我已经查询出数据
如下
横坐标 1 2 3 4 5 6 7 8
纵坐标 好 中 差 好 好 好 差 差
我希望能用一行不同颜色的矩形显示出来,比如好显示绿色矩形,中显示黄色矩形,差显示红色矩形.
请问大家用TChart怎么实现啊?
如下图:
http://p.blog.csdn.net/images/p_blog_csdn_net/wfeng107/402134/o_123.bmp
如下
横坐标 1 2 3 4 5 6 7 8
纵坐标 好 中 差 好 好 好 差 差
我希望能用一行不同颜色的矩形显示出来,比如好显示绿色矩形,中显示黄色矩形,差显示红色矩形.
请问大家用TChart怎么实现啊?
如下图:
http://p.blog.csdn.net/images/p_blog_csdn_net/wfeng107/402134/o_123.bmp
var data_sum:array[1..4] of integer;
tmp:tadoquery;
i:integer;
begin
chart.Series[0].Clear;
tmp:=tadoquery.Create(nil);
tmp.ConnectionString:=dm.adocnmain.ConnectionString; for i:=1 to 4 do
data_sum[i]:=0; with tmp do
begin
sql.clear;
sql.add('SELECT * FROM Emp');
open;
end; tmp.First;
while not tmp.Eof do
begin
with tmp do
begin
if FieldByName('Bg').AsString='党员' then
data_sum[1]:=data_sum[1]+1;
if FieldByName('Bg').AsString='团员' then
data_sum[2]:=data_sum[2]+1;
if FieldByName('Bg').AsString='民主人士' then
data_sum[3]:=data_sum[3]+1;
if FieldByName('Bg').AsString='其他' then
data_sum[4]:=data_sum[4]+1;
end;
tmp.Next;
end;
tmp.Close;
tmp.Free; with chart.Series[0] do begin
chart.Series[0].Add(data_sum[1],'党员',clteecolor);
chart.Series[0].Add(data_sum[2],'团员',clblue);
chart.Series[0].Add(data_sum[3],'民主人士',clyellow);
chart.Series[0].Add(data_sum[4],'其他',clCream);
end;这个符合你的要求吧