matplotlib.animation.FuncAnimation
- classmatplotlib.animation.FuncAnimation(fig, func, frames=None, init_func=None, fargs=None, save_count=None, *, cache_frame_data=True, **kwargs)[source]
-
Создаёт анимацию, многократно вызывая функцию func.
Примечание
Вы должны сохранить созданную анимацию в переменной, которая существует так же долго, как и анимация. В противном случае объект анимации будет удалён сборщиком мусора, и анимация остановится.
- Параметры:
-
-
fig
Figure -
Объект фигуры, используемый для получения необходимых событий, таких как отрисовка или изменение размера.
- funccallable
-
Функция, вызываемая для каждого кадра. Первый аргумент будет следующим значением в frames. Дополнительные позиционные аргументы могут быть переданы через параметр fargs.
Требуемая сигнатура:
def func(frame, *fargs) -> iterable_of_artists
Если
blit == True, func должна возвращать итерируемый объект, содержащий все изменённые или созданные элементы управления. Эта информация используется алгоритмом заливки для определения участков фигуры, которые необходимо обновить. Возвращаемое значение игнорируется, еслиblit == Falseи может быть опущено в этом случае. - framesiterable, int, функция-генератор или None, необязательно
-
Источник данных для передачи функции func для каждого кадра анимации.
- Если iterable, то просто используются предоставленные значения. Если iterable имеет длину, то она переопределяет параметр save_count.
- Если целое число, то эквивалентно передаче
range(frames) -
Если функция-генератор, то должна иметь сигнатуру:
def gen_function() -> obj
- Если None, то эквивалентно передаче
itertools.count.
Во всех этих случаях значения из frames просто передаются в функцию func, и, следовательно, могут быть любого типа.
- init_funccallable, необязательно
-
Функция, используемая для отрисовки чистого кадра. Если не указана, используются результаты отрисовки из первого элемента последовательности frames. Эта функция вызывается один раз перед первым кадром.
Требуемая сигнатура:
def init_func() -> iterable_of_artists
Если
blit == True, init_func должна возвращать итерируемый объект элементов управления для повторной отрисовки. Эта информация используется алгоритмом заливки для определения участков фигуры, которые необходимо обновить. Возвращаемое значение игнорируется, еслиblit == Falseи может быть опущено в этом случае. - fargsкортеж или None, необязательно
-
Дополнительные аргументы для передачи в каждую вызов функции func.
- save_countint, по умолчанию: 100
-
Значение по умолчанию для количества значений из frames, которые нужно кэшировать. Это используется только тогда, когда количество кадров нельзя определить из frames, то есть когда это итератор без длины или генератор.
- intervalint, по умолчанию: 200
-
Задержка между кадрами в миллисекундах.
- repeat_delayint, по умолчанию: 0
-
Задержка в миллисекундах между запусками анимации, если repeat равно True.
- repeatbool, по умолчанию: True
-
Определяет, повторяется ли анимация по завершении последовательности кадров.
- blitbool, по умолчанию: False
-
Используется ли заливка для оптимизации отрисовки. При использовании заливки анимированные элементы управления рисуются в соответствии с их значением zorder; однако они будут нарисованы поверх любых предыдущих элементов управления, независимо от их значения zorder.
- cache_frame_databool, по умолчанию: True
-
Включает или выключает кеширование данных кадров. Отключение кеширования может быть полезно, когда кадры содержат большие объекты.
-
fig
- __init__(fig, func, frames=None, init_func=None, fargs=None, save_count=None, *, cache_frame_data=True, **kwargs)[source]
Методы
__init__(fig, func[, frames, init_func, ...])Возвращает новую последовательность информации о кадре.
Возвращает новую последовательность информации о сохранённых/кэшированных кадрах.
pause()Приостанавливает анимацию.
resume()Возобновляет анимацию.
save(filename[, writer, fps, dpi, codec, ...])Сохраняет анимацию в виде файла видео, рисуя каждый кадр.
to_html5_video([embed_limit])Преобразует анимацию в тег HTML5
<video>.to_jshtml([fps, embed_frames, default_mode])Генерирует HTML-представление анимации.
- new_frame_seq()[source]
-
Возвращает новую последовательность информации о кадре.
- new_saved_frame_seq()[source]
-
Возвращает новую последовательность информации о сохранённых/кэшированных кадрах.
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.6.0/api/_as_gen/matplotlib.animation.FuncAnimation.html