matplotlib.animation.FuncAnimation

class matplotlib.animation.FuncAnimation(fig, func, frames=None, init_func=None, fargs=None, save_count=None, *, cache_frame_data=True, **kwargs)[源代码]

通过重复调用函数制作动画 func .

参数:
figFigure图形

用于获取所需事件(如绘制或调整大小)的figure对象。

func可赎回的

在每个帧调用的函数。第一个参数将是中的下一个值 框架 . 任何其他位置参数都可以通过 法尔格 参数。

所需签名为:

def func(frame, *fargs) -> iterable_of_artists

如果 blit == Truefunc 必须返回所有已修改或创建的艺术家的iterable。该信息由块传送算法用于确定图形的哪些部分需要更新。如果 blit == False 在该情况下可略去。

framesITerable,int,generator函数,或none,可选

要传递的数据源 func 以及动画的每一帧

  • 如果是ITerable,则只需使用提供的值。如果iterable有一个长度,它将覆盖 save_count 克瓦格

  • 如果是整数,则等于传递 range(frames)

  • 如果是生成器函数,则必须具有签名::

    def gen_function() -> obj
    
  • 如果 None ,则等于通过 itertools.count .

在所有这些情况下, 框架 只是简单地传递给用户提供的 func 因此可以是任何类型的。

init_func可调用,可选

用于绘制清晰框架的函数。如果没有给出,将使用框架序列中第一个项目的绘图结果。此函数将在第一帧之前调用一次。

所需签名为:

def init_func() -> iterable_of_artists

如果 blit == Trueinit_func 必须返回一个艺术家的iterable重新绘制。该信息由blitting算法用于确定图形的哪些部分必须更新。如果 blit == False 在该情况下可略去。

fargstuple或none,可选

要传递给每个调用的附加参数 func .

save_countint,默认值:100

回退值的数目 框架 去缓存。仅当无法从中推断帧数时才使用此选项 框架 ,即当它是一个没有长度的迭代器或生成器时。

intervalint,默认值:200

帧之间的延迟(毫秒)。

repeat_delayint,默认值:0

连续动画运行之间的延迟(毫秒),如果 重复 是True。

repeatbool,默认值:True

帧序列完成时动画是否重复。

blitbool,默认值:False

是否使用光点切割优化绘图。注意:当使用blitting时,任何动画艺术家都将根据他们的zorder绘制;但是,他们将在任何以前的艺术家之上绘制,而不管他们的zorder如何。

cache_frame_databool,默认值:True

是否缓存帧数据。当帧包含大型对象时,禁用缓存可能会有所帮助。

__init__(fig, func, frames=None, init_func=None, fargs=None, save_count=None, *, cache_frame_data=True, **kwargs)[源代码]

初始化自身。请参阅帮助(键入(self))以获得准确的签名。

方法

__init__ [图1,FUNC] [, frames, init_func, ...] ) 初始化自身。
new_frame_seq () 返回新的帧信息序列。
new_saved_frame_seq () 返回保存/缓存帧信息的新序列。
save (文件名) [, writer, fps, dpi, codec, ...] ) 通过绘制每个帧,将动画保存为电影文件。
to_html5_video \ [embed_limit] ) 将动画转换为HTML5 <video> 标签。
to_jshtml \ [fps, embed_frames, default_mode] ) 生成动画的HTML表示形式
new_frame_seq()[源代码]

返回新的帧信息序列。

new_saved_frame_seq()[源代码]

返回保存/缓存帧信息的新序列。