我正在尝试让PlotWidget快速移动(从左到右),就好像它是一个电子图。这是我想要的一个例子(除了他使用PyQwt(它与我的projet不兼容,因为我使用PySide(而不是PyQt),除了我希望X轴也从左向右移动):
但是,我不知道该怎么做。我可以绘制抓图,我可以使用方法从左到右移动:
myPlotWidget.setXRange(0, 100)
然后
myPlotWidget.setXRange(1, 101)
这使它看起来像是从左向右移动(1个单位),但我现在不知道如何使它平滑自动。我试图制作一个如下所示的循环:
for i in range(1000):
myPlotWidget.setXRange(10+i, 100+i, update=True)
但是在循环中情节没有更新......情节只在循环结束时更新,所以我看不到它从左向右“移动”,我只是得到了最终的结果。
有人可以帮我这个吗?有什么方法可以强制重绘1000次循环吗?
我第一次认为计算速度太慢所以我试过这个
for i in range(1000):
myPlotWidget.setXRange(10+i, 100+i, update=True)
time.sleep
但当然没有用。
非常感谢你的帮助!
答案 0 :(得分:-1)
在循环结束时,当它更新时,您有类似myPlotWidget.update()
或myPlotWidget.canvas.draw()
的内容,对吗?
将其移入for循环。如果您尝试绘制大量数据,这将会变慢。