【发布时间】:2011-01-24 13:30:50
【问题描述】:
我的previous question 提出了一些很好的意见,但对我没有用,因为我的问题似乎与 Delphi 7 相关。
我有一个包含单个系列 (TFastLineSeries) 和 3,600 个数据点的图表,绘制最多需要 45 秒。其他人说它应该快如闪电,所以谁能帮忙,记住我使用的是 Delphi 7 和标准的 TChart 组件。
我怀疑与其调用 AddXY() 3600 次,不如先准备数据,然后一次性添加。
更新:在 D7 中,AddXy() 函数签名是 function AddXY(Const AXValue, AYValue: Double; Const AXLabel: String; AColor: TColor) : Longint; wheretimeLabelis a string representing MM:SS. But what value should I be passing for
我用 `Chart1.Series[0].AddXY(Chart1.Series[0].Count, codValue, timeLabel, clRed
顺便说一句,我已经编写了 Chart1.Series[0].XValues.DateTime := True; Chart1.BottomAxis.DateTimeFormat := 'nn:ss'; //'hh' 或 'nn' 或 'ss' 如你所愿,例如Chart1.BottomAxis.DateTimeFormat:="dd/mm/yyyy hh:mm";
【问题讨论】:
-
当您准备好并一次性添加时会发生什么?
-
如果它会做你想做的事,JVCL 中的 TJvChart 在绘图方面也比 TChart 快得多,对于线系列。您可以添加 3600 个项目,并绘制一次,这保证比多次更新要快,但我确信在 TChart 中也可以这样做。
-
+1 David,这就是我想做的,但不知道如何编码
-
+1 Warren,我更愿意坚持使用 TChart。别人都说应该没问题