【问题标题】:How do I graph simple X-Y data in Teechart?如何在 Teechart 中绘制简单的 X-Y 数据?
【发布时间】:2014-06-06 15:18:21
【问题描述】:

我正在使用 Delphi 和 Fast Reports,特别是 Fast Reports 中的 TeeChart 对象。 我正在尝试绘制散点图(最好在点之间有一条线) 典型的 X、Y 数据的四个点可能看起来像这样

  • X=10,Y=35
  • X=15,Y=40
  • X=23,Y=44
  • X=27,Y=8

我已将 X 轴自动设置为 false,并将最小值设置为 0,最大值设置为 30。

但是,当 Teechart 绘制点时,它会将 Y 值绘制在正确的高度,但将它们放在 X 位置 0、1、2、3 而不是 10、15、23、27

当我通过将“数据源”设置为“固定数据”并将 35;40;44;8 放入 Y 值框并将 10;15;23;27 放入 X 值框来对数据进行硬编码时,甚至会发生这种情况.

如何设置 Teechart 以在正确的 X-Y 坐标处绘制点?

【问题讨论】:

  • 如何提供线系列的数据?添加XY?
  • 在快速报告中,它通过将图表的 X 和 Y 指向包含您要绘制的数据的数据集中的相关字段来完成。但是,您也可以通过在设计时将数据值直接键入图表对象的 X 和 Y 编辑框来“硬编码”它,就像我上面提到的那样。这就是我为测试它所做的,以确保它不是数据集中的任何东西导致问题。但是使用上面的值,它们仍然绘制在 X 位置 0、1、2 和 3。

标签: delphi teechart fastreport


【解决方案1】:

你应该使用 AddXY 方法,例如:

  Series1.AddXY(10, 35);
  Series1.AddXY(15, 40);
  Series1.AddXY(23, 44);
  Series1.AddXY(27, 8);

您还应该能够像这样修改值:

  Chart1[0].XValues[0]:=10;
  Chart1[0].XValues[1]:=15;
  Chart1[0].XValues[2]:=23;
  Chart1[0].XValues[3]:=27;
  Chart1[0].XValues[0]:=35;
  Chart1[0].XValues[1]:=40;
  Chart1[0].XValues[2]:=44;
  Chart1[0].XValues[3]:=8;

这就是在 FastReports 之外的 TeeChart 中应该如何完成的。如果这些解决方案都不起作用,您可能需要联系 FastReports 技术支持。

【讨论】:

  • 谢谢。我不确定这样做是否可行,因为数据来自数据库。这不仅仅是一张图表。每个图表上最多有 30 个点,但直到运行时我才知道哪些点存在,例如,如果我只有 20 个数据点,我将没有值可以提供给 Chart1[0].Xvalues [21](另一个表中的每条记录也将有大约 12 个图表,该表中大约有 1200 条记录。我将调查从选项卡中提取数据是否可行
  • 报告前的表格显示图表并按照您的建议通过在循环中使用 AddXY 以编程方式输入值,该循环运行到我拥有的点数。答案被接受,因为它显然是正确的,即使将原则应用于快速报告中的对象可能需要一些摆弄。
  • 你不是说最后四个 XValues 到 YValues 吗?
猜你喜欢
  • 2011-10-16
  • 1970-01-01
  • 2023-03-11
  • 2015-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多