带有 RawSamples 的 QwtPlot/QwtPlotCurve:自动缩放根本不起作用

问题描述 投票:0回答:1

我将 Qwt 6.3.0 与 QT 6.7.2 一起使用,通过 QwtPlot/QwtPlotCurve 绘制一些实时数据。目前,数据存储在固定大小的数组中并被循环覆盖。 在固定的时间间隔(10ms 或类似的时间)内,我在 QwtPlot 上触发“重新绘图”,如果我从文档中得到正确的结果,它也应该重新缩放(= UpdateAxes())。

不幸的是,无论我做什么,绘图都不会自动缩放。数据范围为 +-500,缩放通常为 +-1(这将完美匹配初始数据,顺便说一句,初始数据全部为零。)

如果我稍后在实际数据存储在缓冲区中时激活自动缩放,它暂时有效,但同样不会更改新数据的缩放。

有什么想法吗?

qt qwt
1个回答
0
投票

好吧,看来我在发布问题几分钟后就找到了答案(并且在之前毫无头绪的几个小时后;)):

问题分别是 QwtPlotCurve::minYValue/maxYValue 或boundingRect。这些似乎仅在调用“setRawSamples”时更新,但在底层数据更改或调用重新绘制时不会更新。

如果有人对我有更好的解决方案(除了更改底层数据以直接将其输入 QwtPlotCurve 之外),请告诉我!

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.