Python Matplotlib高性能绘图

前阵子用Matplotlib观察动态数据,如图

发现帧率和数据量上去以后性能明显不行,跟不上数据流

尝试几种绘图方法后找到了性能最好的一种,虽然还是很一般。。

 

正文:

不要用animation,不要用fig.canvas.draw(),不要用cla()+plot()

正确方法是使用set_ydata()更新点集坐标

exp:

初始化:

plt.ion()
fig = plt.figure()
ax = fig.subplot()
ax.set_ylim(-20,20)
pltx=np.arange(0,400,10) #x轴坐标集
plty=np.arange(0,400,10) #y轴坐标集
line, = ax.plot(pltx,plty)

更新有效数据:

line.set_ydata(plty)
plt.pause(0.01)

 

猜你喜欢

转载自www.cnblogs.com/Shepard/p/9404847.html
今日推荐