我有一个传感器,它每秒提供近500次数据,我已经连接到一个Arduino,我正在用Python读取数据,因为下一步我会处理。
我尝试使用Matplolib中的FuncAnimation。在
这是animate函数:def animate(i):
global data
# Data comes as one sample per line
char = ''
res = ''
while char != b'\n':
char = s.read()
res = char.decode("utf-8")
res = res[:-1] # To remove a \r added by arduino
data = data[1:] [float(res)]
ax.set_ylim(min(data), max(data))
line.set_ydata(data)
return line,
我用以下代码计算单个值的一般时间:
^{pr2}$
最后,将动画初始化为:ani = animation.FuncAnimation(fig, animate, interval=T * 1000, blit=False)
当我在Arduino这种方法工作得很好,但候,这个方法工作的很好,但是当我全速运行的时候python它崩溃了,这让我相信问题与速度有关。而且,即使我做平均值,情节也落后于实际动作5秒左右。
如何实时绘制所有值?