滚动线pyqtgraph

时间:2019-05-13 15:24:24

标签: python pyqt pyqtgraph

我想连续绘制传感器数据,并偶尔绘制垂直线来表示事件。我可以使传感器数据滚动,但是我不确定在使用addLine添加线之后如何在屏幕外滚动线,并且绘图最终看起来像这样:

enter image description here

该线停留在绘图的边缘(在我想绘制它的时候),而实际绘图则越来越压缩。

这是我的代码:

ptr = 0
acc_data = deque(maxlen=window_width)
plot = QtGui.QApplication([])
win = pg.GraphicsWindow()
acc_plot = win.addPlot(title="Accelerometer Data")
acc_curve = acc_plot.plot()

while True:
    data = await websocket.recv()
    data = json.loads(data)
    if data["event"] == "accelerometer":
        data = data["data"]
        acc_data.append(float(data["x"]))
        ptr += 1
        acc_curve.setData(acc_data)
        acc_curve.setPos(ptr, 0)
        QtGui.QApplication.processEvents()
    elif data["event"] == "press":
        acc_plot.addLine(x=ptr, y=None)
        QtGui.QApplication.processEvents()

我如何使线随情节滚动(一旦过去的时间足够远,最终会显示在屏幕外)?

0 个答案:

没有答案