tchart横坐标时间轴

gxx521 2009-07-30 10:22:34
用tchart画图,横轴用来显示时间,从0到15min,增量为15秒,相当于要画60个点,可是这60个点来的时间间隔不一定相等,请问series1.add()或series1.addxy();方法中如何写呢,下面是我写的一段代码,请问该如何写,才能显示一条完整的曲线
谢谢了,我很急啊,马上就要交了,我是delphi菜鸟

procedure TForm2.Button1Click(Sender: TObject);
var
data:array[0..59] of integer;
i:integer;
begin
for i := 0 to 59 do
data[i]:=random(200);
while i<60 do
begin
Series1.AddXY();//里面不知道该如何写

i:=i+1;
end;

end;
...全文
677 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gxx521 2009-07-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 kampan 的回复:]
Delphi(Pascal) codeprocedure TForm1.Button1Click(Sender: TObject);var
Series: TLineSeries;
I: Integer;
tmpValue: Integer;begin
Series := TLineSeries.Create(Chart1);

Chart1.Title.Text.Text :¡­
[/Quote]
你好,我的横轴是时间,如果是数字的话,这种办法可能行,可是时间就不一定了,我的点来的时间间隔可能不同,可能10秒来一个,也可能12秒来一个,13秒来一个,这该如何写呢
kampan 2009-07-30
  • 打赏
  • 举报
回复

procedure TForm1.Button1Click(Sender: TObject);
var
Series: TLineSeries;
I: Integer;
tmpValue: Integer;
begin
Series := TLineSeries.Create(Chart1);

Chart1.Title.Text.Text := '图表的标题';
randomize;
for I := 1 to 60 do
begin
tmpValue := random(200);
Series.Add(tmpValue, IntToStr(I), clRed);
end;
Chart1.AddSeries(Series);

Chart1.Color := clWhite;
Chart1.BackColor := clMoneyGreen;
Chart1.LeftAxis.Title.Caption := '(单位:有功需量-0.0001kW; 无功需量-0.0001kvar)';

Chart1.AddSeries(Series);
end;
bdmh 2009-07-30
  • 打赏
  • 举报
回复
AddXY,参数就是x,y的值呀,你传入点的实际值就行了,x应该是你的i,y应该是你的data[i]
zhaixing0101 2009-07-30
  • 打赏
  • 举报
回复
设置横轴为时间类型:series1.XValues.DateTime := True;

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧