该matplotlib文档约州
FuncAnimation
保留对实例对象的引用至关重要。动画由计时器(通常来自主机GUI框架)推进,该动画对象持有唯一的引用。如果不保留对Animation对象的引用,则将对其进行垃圾回收(并因此而对计时器进行引用),这将停止动画。
如果将其放置
plt.show()在
anim_random_points函数之外,则将
ani保留垃圾内容,该变量保留了对动画的引用,并且将不再显示动画。
这种情况的解决方案是从该函数返回动画
def anim_random_points(fig, axis): # ... ani = matplotlib.animation.FuncAnimation(...) return aniif __name__ == '__main__': # ... ani = anim_random_points(...) plt.show()



