Ноу Інти, лекція, dbchart

Анотація: На цій лекції ви познайомитеся з компонентом DBChart, призначеним для створення графіків і діаграм. Вивчіть основні методи і властивості цього компонента, навчитеся програмно змінювати зовнішній вигляд графіків.

Для побудови графіків і діаграм використовуються компоненти Chart з вкладки Additional. і DBChart з вкладки Data Controls палітри компонентів. Це рівноцінні компоненти, відмінність полягає в тому, що DBChart приймає дані з вказаного набору даних - таблиці або запиту, а при використанні Chart дані доводиться вносити самостійно.

Це досить складні компоненти, вони мають безліч властивостей, які в свою чергу самі є складними об'єктами. Якщо описувати компоненти графіків і діаграм докладно, то вийде невелика книга, тому ми розглянемо лише основні прийоми роботи з ними.

Просте додаток до графіка

Графіки застосовуються там, де потрібно показати динаміку підйому або спаду одного або декількох об'єктів. Хорошим прикладом є графік з кривими, що демонструють динаміку змін курсів долара і євро до рубля. Діаграми ж застосовуються для демонстрації порівняльних показників різних об'єктів. Так, наприклад, під час передвиборної кампанії часто демонструють діаграму, де стовпчики різного зростання показують, хто з кандидатів набрав більше голосів. Кругові діаграми показують порівняльне відношення кожного об'єкта до цілого, наприклад кругова діаграма. показує відсоток депутатів кожної партії від загальної кількості депутатів.

Познайомимося з роботою компонента DBChart на практиці. Для прикладу нам знадобиться база даних з однією таблицею, в яку ми запишемо курси долара і євро до рубля. Таблицю ви можете зробити будь-якій - Paradox або MS Access. в таблиці створіть три поля: CDate. CDollar і CEvro. Саму таблицю назвіть Curs. Заповніть таблицю довільними даними, роблячи по запису на кожен день, нехай в таблиці буде не менше 10 записів. Дані не обов'язково повинні відповідати дійсності, але постарайтеся зробити їх схожими на реальний курс долара США і євро до рубля, наприклад:

Заповнивши таблицю, підключіть її до нового проекту, використовуючи технологію BDE або ADO. і відразу ж переведіть в True властивість Active компонента TTable (TADOTable).

Ноу Інти, лекція, dbchart

Натисніть кнопку Add (додати серію). У вас з'явиться вікно вибору графіка:

Ноу Інти, лекція, dbchart


Мал. 13.2. Вікно вибору графіка.

Ноу Інти, лекція, dbchart


Мал. 13.3. Нова серія

Ноу Інти, лекція, dbchart


Мал. 13.4. Підключення серії до таблиці

Далі перейдіть на вкладку Chart і додайте ще одну серію. Зробіть все одно, тільки відобразите курс євро. Ми отримали не дуже вражаючий графік:

Ноу Інти, лекція, dbchart


Мал. 13.5. Графік курсів долара і євро

Дивимося, які вкладки тут ще є. Самою останньою є вкладка 3D. на якій можна включити або виключити об'ємність графіка. а також відрегулювати обертання, нахил або масштаб.

На вкладці Walls (стіни) можна відрегулювати "стіни" осей, на малюнку 13.5 вони виділяються жовтим і білим кольорами.

Вкладка Paging дозволяє налаштувати багатосторінкові графіки, а вкладка Panel - задати параметри фону. Цікаві тут параметри панелі Gradient. що дозволяють задати градієнтну заливку. При цьому фон буде плавно переходити з одного кольору в інший.

Вкладка Legend дозволяє налаштувати легенду графіка. на малюнку ви бачите її в правій частині графіка з написами "Долар" і "Євро".

Перейдемо на вкладку Axis (осі). Тут ми можемо зробити безліч налаштувань осей. Спочатку в лівій частині вікна в розділі Axis потрібно вибрати вісь. Ми виберемо Left. тобто, вісь Y. Праворуч знаходиться додаткове вікно зі своїми власними вкладками, причому відкрита вкладка Scales (шкали):

Ноу Інти, лекція, dbchart


Мал. 13.6. Налаштування осей графіка

Тут ми знімемо "галочку" Automatic. яка автоматично встановлює розмір шкали. У більшості випадків цього не потрібно, але в нашому прикладі ми отримали відносно рівні лінії, причому одна з них в нижній, а інша - у верхній частині, що не чинить графік красивіше. Отже, зніміть цю галочку, а потім за допомогою кнопок Change трохи збільште максимальне значення. і трохи зменшіть мінімальне. В результаті криві графіка зрушаться до середини.

Далі можете перейти на внутрішню вкладку Title. де напишіть "Курс рубля". Цей напис є заголовком осі Y. Більше, мабуть, з цією віссю робити нічого не потрібно. Зате вісь X у нас замість дат показує значення. Виправимо це. У групі радіокнопок Axis виберемо Bottom (нижня вісь), і перейдемо на внутрішню вкладку Labels. У розділі Style замість Auto виберемо Value. що змінить написи до точок осі X. замість призначуваних автоматично, ми чітко вказали, що потрібно взяти значення поля, тобто, дату. В результаті цих маніпуляцій ми отримаємо вже досить привабливий графік:

Ноу Інти, лекція, dbchart


Мал. 13.7. Графік курсів валют

Збережіть проект, скомпілюйте і завантажте отриману програму. Подивимося, що вміє робити цей графік в робочому додатку. Перш за все, якщо ви виділите якийсь ділянку графіка лівою кнопкою миші зліва-направо і зверху-вниз, виділений фрагмент збільшиться в усі вікно графіка. Вхопившись за графік правою кнопкою миші, його можна буде переміщати. Потім ви можете зробити зворотне виділення лівою кнопкою будь-якого ділянки графіка знизу-вгору і праворуч-ліворуч, і масштаб графіка відновиться.

Змінити масштаб програмно можна за допомогою властивості Zoom об'єкта View3DOptions графіка:

Це ціле число. що містить відсоток масштабу. Значення 100 відповідає нормальному масштабу. Спробуйте змінювати масштаб від 1 до 500.

Схожі статті