matplotlib.animation.FuncAnimation #
- 类 matplotlib.animation。FuncAnimation ( fig , func , frames = None , init_func = None , fargs = None , save_count = None , * , cache_frame_data = True , ** kwargs ) [来源] #
通过重复调用函数func来制作动画。
笔记
您必须将创建的动画存储在一个变量中,只要动画应该运行,该变量就会存在。否则,动画对象将被垃圾收集并且动画停止。
- 参数:
- 图
Figure
用于获取所需事件的图形对象,例如绘制或调整大小。
- 函数可调用
在每一帧调用的函数。第一个参数将是frames中的下一个值。任何额外的位置参数都可以通过fargs参数提供。
所需的签名是:
def func(frame, *fargs) -> iterable_of_artists
如果,func必须返回所有被修改或创建的艺术家的迭代。位图算法使用此信息来确定图形的哪些部分必须更新。如果在这种情况下可以省略返回值,则返回值是未使用的。
blit == True
blit == False
- 帧可迭代,int,生成器函数,或无,可选
传递func和动画每一帧的数据源
如果是可迭代的,则只需使用提供的值。如果 iterable 有长度,它将覆盖save_count kwarg。
如果是整数,则相当于通过
range(frames)
如果是生成器函数,则必须具有签名:
def gen_function() -> obj
如果None,则相当于通过
itertools.count
。
在所有这些情况下,frames中的值只是简单地传递给用户提供的func,因此可以是任何类型。
- init_func可调用,可选
用于绘制清晰框架的函数。如果未给出,将使用从帧序列中的第一项绘制的结果。此函数将在第一帧之前调用一次。
所需的签名是:
def init_func() -> iterable_of_artists
如果,init_func必须返回一个可迭代的艺术家以重新绘制。位图算法使用此信息来确定图形的哪些部分必须更新。如果在这种情况下可以省略返回值,则返回值是未使用的。
blit == True
blit == False
- fargs元组或无,可选
传递给对func的每次调用的附加参数。
- save_count int,默认值:100
从帧到缓存的值数量的后备。这仅在无法从 frames 推断出帧数时使用,即当它是没有长度的迭代器或生成器时。
- 间隔整数,默认值:200
帧之间的延迟(以毫秒为单位)。
- repeat_delay int,默认值:0
如果repeat为 True ,则连续动画运行之间的延迟(以毫秒为单位 )。
- 重复布尔,默认:真
当帧序列完成时动画是否重复。
- blit布尔值,默认值:False
blitting 是否用于优化绘图。注意:使用 blitting 时,任何动画艺术家都将根据其 zorder 进行绘制;但是,无论他们的 zorder 是什么,他们都将被绘制在任何以前的艺术家之上。
- cache_frame_data布尔值,默认值:True
帧数据是否被缓存。当帧包含大型对象时,禁用缓存可能会有所帮助。
- 图
- __init__ ( fig , func , frames = None , init_func = None , fargs = None , save_count = None , * , cache_frame_data = True , ** kwargs ) [来源] #
方法
__init__
(无花果,func [,帧,init_func,...])返回一个新的帧信息序列。
返回保存/缓存的帧信息的新序列。
pause
()暂停动画。
resume
()恢复动画。
save
(文件名[, writer, fps, dpi, codec, ...])通过绘制每一帧将动画保存为电影文件。
to_html5_video
([嵌入限制])将动画转换为 HTML5
<video>
标签。to_jshtml
([fps, embed_frames, default_mode])生成动画的 HTML 表示。