如何转变Chart中Series的类型,如把柱状图变成饼图??(50分)

  • 主题发起人 主题发起人 jie5
  • 开始时间 开始时间
J

jie5

Unregistered / Unconfirmed
GUEST, unregistred user!
如何转变Chart中Series的类型,如把柱状图变成饼图??
请指教!
 
有谁知道啊,应该不很难吧。。
 
在把饼状图Create一下就行了
 
用chart1.AddSeries()就可以了
 
可以先在chart里面加好,控制显示就可以了。
series[1].active:=true;
series[2].active:=False;
 
我曾经作过一些这方面的东西,谈一下不成熟的看法:
1.读取柱形图的值;
2.将该series释放;
3.重新创建饼形图并复值;
 
用ChangeSeriesType,定义如下
procedure ChangeSeriesType(Var ASeries:TChartSeries;NewType:TChartSeriesClass);
***************************************************************************
var
tmp :TChartSeries;
i :integer;
begin
if DBChart.SeriesCount<=0 then
exit;
for i:=0 to DBChart.SeriesCount-1do
begin
tmp := DBChart.Series;
ChangeSeriesType(tmp,TChartSeriesClass(TBarSeries));//类型转换,可以在这里指定类型TPieSeries等
tmp.ColorEachPoint :=false;

tmp.Active :=true;
end;
end;
看不明白再问。
 
上面几位老兄误会呢,我需要吧Series1(柱状图)变成Series1(饼图)!
desertsmoke老兄领会了我得意思。
不过你写得过程好像不行。TChartSeriesClass在哪里定义得?
第一个参数ASeries没有在过程中被调用啊?
 
tmp就时第一个参数ASeries啊!!!
TChartSeriesClass应该是在Series单元中定义的,我这里没有Series的源程序看不到。
呵呵~~这是我源程序中的一段,肯定没问题的
 
to :desertsmoke
desertsmoke,能否作一个小例子发给我啊,不胜感谢!!呵呵。。
 
好,你留个Mail
 
desertsmoke老兄:我得MAIL来了,jie5@21cn.com ,谢谢喽!
 
jie5 :
能顺便给我也发一个吗? MAIL: l_on@21cn.com
 
给我也发一个吧,,,我也要解决此问题
xuqiang_jx@163.com
谢谢
 
邮件已发,
asaili你的邮箱不通
 
正是我需要得,谢谢大家的帮忙。
另外,desertsmoke老兄,我这为什么不能看ChangeSeriesType的声明?
提示'unable to locate file chart.pas'??
我用的是D6
主要问题解决了,发分了,呵呵,不多,desertsmoke兄笑纳。
 
TChart是Borland用的其他公司的控件,可能因为这没有源码
 
to desertsmoke:
我也要;
E_Mail:yc@sichuan.net.cn
先谢了
 
后退
顶部