如何在 DrawAllPoints:= false 时绘制巨大 TeeChart FastLine 系列的每个像素、最小值和最大值?
Howto draw on every pixel, the min and max values of huge TeeChart FastLine series while DrawAllPoints:= false?
使用 Delphi 10.3、VCL 和内置标准 TeeChart。 Windows10 x64。
我有数百万的庞大数据样本要查看。
我的目标是显示与每个像素相关的最小值和最大值。
即由于一个像素中的屏幕抽取而绘制的数据段中的最小值和最大值。
由于处理时间响应,我尝试了 DrawAllPoints := false.It 快了 30 倍!
我认为在这种情况下,TeeChart 正在从相关细分中提取第一个样本的值。
因此 min/max 值未绘制。
使用 DrawAllPoints := true,一切都很好。
我还允许用户 Zoom/Unzoom。
我可以定义我自己的短 TeeChart 系列,限于我自己的像素数。
然而,由于用户的缩放选项,它并不是那么微不足道。
TeeChart 中有这方面的功能吗?即 DrawAllPoints := false 在每个像素上绘制线段的最小值和最大值时。
也许有一个回调例程或继承例程我可以强制这种行为?
谢谢。
将系列的DrawAllPointsStyle
属性设为daMinMax
。
似乎确实存在一些差异。
for var i := 1 to 100000 do begin
Series1.Add(Sin(i/10000) + Random); // left one, daMinMax is set
FastLineSeries1.Add(Sin(i/10000) + Random);
end;
使用 Delphi 10.3、VCL 和内置标准 TeeChart。 Windows10 x64。
我有数百万的庞大数据样本要查看。 我的目标是显示与每个像素相关的最小值和最大值。 即由于一个像素中的屏幕抽取而绘制的数据段中的最小值和最大值。
由于处理时间响应,我尝试了 DrawAllPoints := false.It 快了 30 倍! 我认为在这种情况下,TeeChart 正在从相关细分中提取第一个样本的值。 因此 min/max 值未绘制。 使用 DrawAllPoints := true,一切都很好。
我还允许用户 Zoom/Unzoom。
我可以定义我自己的短 TeeChart 系列,限于我自己的像素数。 然而,由于用户的缩放选项,它并不是那么微不足道。
TeeChart 中有这方面的功能吗?即 DrawAllPoints := false 在每个像素上绘制线段的最小值和最大值时。 也许有一个回调例程或继承例程我可以强制这种行为?
谢谢。
将系列的DrawAllPointsStyle
属性设为daMinMax
。
似乎确实存在一些差异。
for var i := 1 to 100000 do begin
Series1.Add(Sin(i/10000) + Random); // left one, daMinMax is set
FastLineSeries1.Add(Sin(i/10000) + Random);
end;