Python-停止动画

Python-停止动画,python,matplotlib,Python,Matplotlib,有人知道停止动画的首选方法吗?我正在使用它记录示波器的数据,并希望能够根据需要暂停和重新启动数据。我有没有办法向它发送一个按钮点击事件 谢谢,DerekFuncAnimation是TimedAnimation的一个子类。它将帧作为更新函数M的输入,可以是数字或生成器。它将repeat作为一个参数,该参数从TimedAnimation继承而来,通过将reapeat设置为False可以停止动画自身重复 PS:Matplotlib文档是蹩脚的、错误的、懒散的写作风格、不清楚的解释。有时候,我真的需要深

有人知道停止动画的首选方法吗?我正在使用它记录示波器的数据,并希望能够根据需要暂停和重新启动数据。我有没有办法向它发送一个按钮点击事件


谢谢,Derek

FuncAnimation是
TimedAnimation
的一个子类。它将帧作为更新函数M的输入,可以是数字或生成器。它将
repeat
作为一个参数,该参数从
TimedAnimation
继承而来,通过将
reapeat
设置为
False
可以停止动画自身重复

PS:Matplotlib文档是蹩脚的、错误的、懒散的写作风格、不清楚的解释。有时候,我真的需要深入研究源代码来找出该做什么


FuncAnimation
类似,它也将
fargs
作为
update
函数的额外参数,但在其文档中,它没有说明
fargs
的类型。事实上,我在它的源代码中发现,
fargs被用作一个列表

可能有一些模块,但我定义了自己的暂停函数。它通过单击图形上的某个位置来冻结动画。再次单击时,它将继续绘制动画

必须在动画开始之前定义一个标志。在动画函数(绘制动画期间将调用的函数)中,必须定义一个控制块,如:
如果不暂停:
,然后在下面编写用于绘制函数的代码

你可能已经检查过了,但给出了一个例子来说明我的意思。我想,很多人都是这样做的

请注意,暂停开关通过以下功能完成:

def onClick(event):
    global pause
    pause ^= True
在调用FuncAnimation之前,必须进一步添加这一行

fig.canvas.mpl_connect('button_press_event', onClick)

不要认为当前已经实现了该功能。在这种情况下,你最好自己做计时器,明白了。那么您是否建议使用TimedAnimation函数,因为它接受一个事件源,我认为这意味着它可以被停止?然后,我会在一个单独的功能中设置我自己的计时器,以便按照您所说的那样将数据更新到图形。不,完全不要使用
动画
模块(作为参考除外)。据我所知,无法“暂停”正在运行的动画。现在可以选择使用动画的事件源
anim.event\u source.stop()
停止动画。请参阅中下面的两个答案。