我想使用pylab动画更新多个数字。我初始化每个要显示的频道的新数字,并使用以下方式将交互模式设置为关闭:
pyplot.ion()
pyplot.show()
在包含该图的类中,有一个环形缓冲区和一个更新数据的方法:
def append_data(self, data):
update buffers with data
...
...
self.lineb.set_data(self.tbuf, self.bbuf)
self.ax1.set_xlim( [min(self.tbuf), max(self.tbuf)] )
self.ax1.set_ylim( [min(self.bbuf), max(self.bbuf)] )
...
...
self.fig.show()
pyplot.draw()
问题:有多个数字,只有最后一个正确更新。其他的不刷新。我知道数据已正确添加到每个数字的缓冲区中,因此问题不存在。
答案 0 :(得分:0)
我在this article之后找到了一个解决方案。
我用名字初始化了这个数字:
fig = pyplot.figure(name)
然后我更改了行:
self.fig.show()
pyplot.draw()
为:
pyplot.figure(name)
pyplot.draw()
显然这是有效的,不完全确定原因。