TeeChart 2017:尽管设置,FastLine AddRealTime 自动缩放底轴

TeeChart 2017: FastLine AddRealTime auto scales bottom axis despite settings

TeeChart 组件有一个名为 IFastLineSeries 的图表系列。 它允许绘制简单的 "line type" 图表。

它的接口提供了一个名为 AddRealTime 的方法,与更通用的 AddXY 方法相比,这是一种向图表添加数据的更快方法。

但是 AddRealTime 有一些未记录的副作用:

  1. 当数据几乎 "overflows" 视图时,它将图表向左滚动(为新数据腾出空间)
  2. 它可以调整底轴(X轴范围)以适应所有数据这样做

第一个功能在很多情况下都是合理的行为:例如,您希望在收到最新过程测量值时继续显示它们。

但是,在我的例子中,底部(X 轴)的自动缩放已关闭。 IMO 它不应该触及缩放设置!但确实如此。

第二个功能更糟糕:自动滚动后,控件确保所有信息都在视图中。这会减慢应用程序的速度,因为您可能已经在快速线系列中积累了大量数据,然后所有这些数据都必须被渲染...击败了方法背后的 "is faster" 理念...

我对滚动没有意见,但对自动 'zoom out X' 操作不满意。

有没有人设法让 AddRealTime 在没有它的情况下工作,或者除了退回到较慢的 AddXY 函数之外别无选择? 我知道我必须自己调整底轴才能达到类似的滚动效果,但至少不会意外缩小。

备注:

您可以通过以下方式控制您描述的行为:

您可以使用 Series.AddXY 来避免任何 AddRealtime 的自动行为;但无论如何您也可以继续使用 AddRealtime 并使用您自己的轴的 SetMinMax 修改行为以将数据滚动到左侧,这样可以在图表中保持相同数量的显示点。

此处的演示就是这样做的,并解决了您的问题。 Github VB TeeChart Add Realtime demo project