![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 14.10.2010
Сообщений: 3
|
![]()
Написал программу, точнне база данных на Delphi, данные берутся из MS Access подключением через ADO Connection. Не могу сделать диаграмму чтобы отображались данные из моей базы. Подскажите пожалуйста как сделать???
Очень нужно... |
![]() |
![]() |
![]() |
#2 |
Регистрация: 15.02.2011
Сообщений: 3
|
![]()
хм... к сожалению не работал со связью баз Access и Delphi, так что могу подсказать только, что данные из базы лучше забить в массив а потом уж выводить в виде графика, самому же будет легче, а в график можно вывести так:
допустим у тебя массив Access: Array [0..100] of integer; ты его заполнил, всё супер, тебе надо вывести в Chart_е, для этого: Код:
AddXY - это запись по координатам в твоей диаграмме; i - (первая после скобки) это позиция твоего первой точки диаграммы, например если ты столбцы выводишь, то первый столбец; Access[i] - ну это твой массив; ' ' - в кавычках можно вписать лубую надпись, которая будет выводиться под графиком(если будут проблемы с выводом значений, т.е. надпись и с низу и в значении, тогда щелкни по Chart_у Series/Marks/Style->Value) clGreen - это цвет серии. Так что с выводом ничего сложного, а вот как забить базу в массив и как вообще её связать поищи, если не сложно, кинь сюда что найдёшь) |
![]() |
![]() |
![]() |
#3 |
Регистрация: 14.10.2010
Сообщений: 3
|
![]()
нашел лишь такой код:
unit Unit5; // построение диаграмм interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, TeeProcs, TeEngine, Chart, Series; type TForm5 = class(TForm) RadioGroup1: TRadioGroup; Chart1: TChart; Button1: TButton; Button2: TButton; Series1: TPieSeries; Series3: TBarSeries; Series2: TFastLineSeries; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); {procedure FormCreate(Sender: TObject);} private { Private declarations } public { Public declarations } end; var Form5: TForm5; implementation uses Unit7, Unit2, DataModuleUnit; {$R *.dfm} procedure TForm5.Button2Click(Sender: TObject); // выход begin form5.close; end; procedure TForm5.Button1Click(Sender: TObject); begin case Form5.RadioGroup1.ItemIndex of 0:begin Form5.Chart1.Series[0].Active:=true; Form5.Chart1.Series[0].Clear; Form5.Chart1.Series[1].Active:=false; Form5.Chart1.Series[2].Active:=false; end; 1: begin Form5.Chart1.Series[0].Active:=false; Form5.Chart1.Series[1].Active:=true; Form5.Chart1.Series[1].Clear; Form5.Chart1.Series[2].Active:=false; end; 2: begin Form5.Chart1.Series[0].Active:=false; Form5.Chart1.Series[1].Active:=false; Form5.Chart1.Series[2].Active:=true; Form5.Chart1.Series[2].Clear; end; end; DataModule8.ds_diagram.Active := false; DataModule8.ds_diagram.Active := true; DataModule8.ds_diagram.First; Series1.Clear; while (not DataModule8.ds_diagram.Eof) do // построение begin Series1.Add(DataModule8.ds_diagram. FieldByName('num').AsFloat, DataModule8.ds_diagram.FieldByName( 'type_name').AsString); DataModule8.ds_diagram.Next; end; DataModule8.ds_diagram.First; Series2.Clear; while (not DataModule8.ds_diagram.Eof) do begin Series2.Add(DataModule8.ds_diagram. FieldByName('sum_cost').AsFloat, DataModule8.ds_diagram.FieldByName( 'type_name').AsString); DataModule8.ds_diagram.Next; end; DataModule8.ds_diagram.First; Series3.Clear; while (not DataModule8.ds_diagram.Eof) do begin Series3.Add(DataModule8.ds_diagram. FieldByName('sum_area').AsFloat, DataModule8.ds_diagram.FieldByName( 'type_name').AsString, random($FFFFFF)); DataModule8.ds_diagram.Next; end; end; end. |
![]() |
![]() |
![]() |
#4 | |
Регистрация: 14.10.2010
Сообщений: 3
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 04.10.2007
Сообщений: 106
|
![]()
Использовать DBChart. Редактор рядов(series) данных там идентичный, как источник данных для ряда нужно выбрать DataSet, затем нужные поля по которым будет строится график.
Все не так плохо, как вам кажется, на самом деле все гораздо хуже.
http://delphiworld.narod.ru/dw.html - 5000 статей!!! удобный поиск, оффлайн сборник, рекомендую всем |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос по компоненту memo | Handy | Компоненты Delphi | 6 | 17.06.2011 00:50 |
Вопрос по компоненту DateTimePicker | Dux | Компоненты Delphi | 5 | 18.09.2010 23:02 |
Вопрос по компоненту UpdateSQL | Pang | SQL, базы данных | 1 | 18.05.2010 11:59 |
Вопрос по компоненту TDateTimePicker | SANIOK_AV | Общие вопросы Delphi | 5 | 05.06.2009 13:47 |
Вопрос по компоненту StringGrid | Vla9240 | Помощь студентам | 2 | 14.05.2009 22:36 |