matplotlib子地块动画的奇怪行为

2024-06-25 05:57:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要用子情节来制作一个人物的动画。 为此,我举了一个官方的例子:

http://matplotlib.org/examples/animation/subplots.html

现在,我想通过一个函数访问这个功能。 因此,我将替换这个正式示例的最后3行

ani = SubplotAnimation()
# ani.save('test_sub.mp4')
plt.show()

签署人:

def MyDraw():            
    ani = SubplotAnimation()
    plt.show()

MyDraw()

官方的例子运行得很好,但是通过函数MyDraw调用它是行不通的。它不会产生错误信息,但图中显示的每个轴内部没有曲线。。。你知道吗

如果有人能帮我。 谢谢。你知道吗


Tags: 函数orghttp官方matplotlibshow动画plt
2条回答

必须保留对动画对象的引用,否则它(连同更新绘图的计时器)将被垃圾收集。你知道吗

http://matplotlib.org/api/animation_api.html#animation

非常感谢你的帮助。

因此,解决方案是保持对动画对象的引用如下:

def MyDraw():            
    ani = SubplotAnimation()
    plt.show()
    return ani

ani=MyDraw()

即使此后不需要处理变量ani

还要注意的是

ani = SubplotAnimation()
plt.show() 

很好,但是

SubplotAnimation()
plt.show()

不起作用,原因完全一样。你知道吗

相关问题 更多 >