pyqtgraph绘制曲线图(4) ---坐标轴同步移动

前面写的是关于逐点绘制波形,但是其坐标轴是不会动的这里进行坐标轴随波形同步进行移动的操作

**第一步:**先进行显示窗口的基本设置

win = pg.GraphicsWindow()
win.setWindowTitle('pyqtgraph example: Scrolling Plots')
p4 = win.addPlot()   #添加一条波形
p4.setDownsampling(mode='peak')
p4.setClipToView(True)

**第二步:**对所需的全局变量做初始化

curve4 = p4.plot()
data3 = array.array('d')   #这里的数组设置非常关键,在设定窗口显示不同点数时,很方便
ptr3 = 0

**第三步:**代码的改写,在前面动态波形的基础上对代码进行改写

def update2():
    global data3, ptr3

    tmp1 = np.random.normal()

    if ptr3 <= 100:
        data3.append(tmp1)
        curve4.setData(data3[:ptr3])
    else:
        tmp = data3
        # data3 = np.empty(data3.shape[0] * 2)

        data3[:-1] = data3[1:]
        data3[-1] = tmp1
        curve4.setData(np.frombuffer(data3, dtype=np.double))
        curve4.setPos(ptr3,0)
    ptr3 += 1

添加定时器,来控制输入点数的频率

timer = pg.QtCore.QTimer()
timer.timeout.connect(update2)
timer.start(50)

if __name__ == '__main__':
    import sys
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
        QtGui.QApplication.instance().exec_()

展示一下

在这里插入图片描述

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值