Будуємо гістограми на perl html css

Гістограма (від грец. Histos, тут - стовп і. Грама). столбчатая діаграма, один з видів графічного зображення статистичного розподілу будь-яких величин за кількісною ознакою. ("Велика Радянська Енциклопедія").

Сьогодні захотів написати бібліотечку для побудови гістограм, або стовпчастих діаграм. Ось таких ось:

Будуємо гістограми на perl html css

Отже, нам потрібно створити Perl-клас для формування html-коду, для побудови гістограм. Зовнішній вигляд діаграм задавати будемо через CSS.

На вхід подаються дані, у вигляді посилання на хеш-масив. Ключі хеша йдуть в нижньому рядку, як підписів. Значення - числа.

Після обробки, ми повинні отримувати html-код, який можна привести в порядок за допомогою CSS. Цей html-код повинен зображувати діаграму, у вигляді вертикальних стовпців.

use BarChart;
my $ g = new BarChart;
$ G-> setData (
'Плюшки' => '20',
'Ватрушки' => '45',
'Пряники' => '30'
>
);
$ G-> height (200);
my $ graph = $ g-> generate;
print $ graph;

Повний код не буду приводити. Можете скачати цей клас і розібратися самостійно. Він зовсім не складний.

Як з цим працювати

  • Створюємо об'єкт класу BarChart
  • Передаємо об'єкту посилання на хеш, що містить пари "назва - число"
  • Встановлюємо виосту майбутньої діаграми (за замовчуванням 300px)
  • При необхідності, відключаємо висновок значень на шпальтах ($ g-> showValues ​​(0))
  • Генеруємо html ($ g-> generate)
  • Виводимо готову гистограмму
  • Налаштовуємо зовнішній вигляд, за допомогою CSS

HTML на виході буде виглядати приблизно так:












50
180
100
плюшки ватрушки пряники

Як видно, цієї розмітки цілком достатньо, щоб управляти видом гістограми через CSS. Пропоную свій варіант:

.graph. graph tr. graph td border: 0px;
padding: 0px;
margin: 0px;
vertical-align: bottom;
text-align: center;
>
.graph border: 1px solid silver;
>
.graph_col text-align: center;
>
.graph_col div width: 30px;
background-color: blue;
color: white;
margin: 10px 3px;
>
.graph_legend td background-color: Green;
color: White;
padding: 5px;
>

Спробуйте зробити щось оригінальне.

Гідності й недоліки

Недоліки: Не можна перевернути гистограмму на бік. Не можна робити стовпчики різного кольору, так як вони належать одному CSS-класу. Крім того, не можна задати порядок виводу стовпчиків, так як вони спочатку передаються в хеше, який невпорядковані. Однак, при нескладної доробки, цей недолік можна усунути.

До переваг можна зарахувати простоту використання і зміни зовнішнього вигляду.

Ви можете завантажити цей клас і використовувати як захочете.

Посилання в тему

Google chart API дозволяє будувати діаграми, у вигляді зображень, не докладаючи зусиль. Дуже багато можливостей і зручний інтерфейс.

Хто ще знає які бібліотеки або способи будувати діаграми? Поділіться ссилочку на матеріали.

Схожі статті