我需要用子图设置动画。 为此,我使用这个官方的例子:
http://matplotlib.org/examples/animation/subplots.html
现在,我想通过一个函数访问此功能。 所以,我替换了这个官方例子的最后3行
ani = SubplotAnimation()
# ani.save('test_sub.mp4')
plt.show()
by:
def MyDraw():
ani = SubplotAnimation()
plt.show()
MyDraw()
官方示例完美无缺,但通过函数MyDraw
调用此方法不起作用。它不会产生任何错误信息,但图中显示每个轴内部没有曲线......
如果有人可以帮助我。 感谢。
答案 0 :(得分:1)
您必须保留对动画对象的引用,或者它(以及更新绘图的计时器)获取垃圾。
答案 1 :(得分:0)
非常感谢你的帮助。
因此,解决方案是保持对动画对象的引用:
def MyDraw():
ani = SubplotAnimation()
plt.show()
return ani
ani=MyDraw()
即使您之后无需处理变量ani
。
另请注意
ani = SubplotAnimation()
plt.show()
工作正常,但
SubplotAnimation()
plt.show()
不起作用,原因完全相同。