matplotlib.animation.Animation
- classmatplotlib.animation.Animation(fig, event_source=None, blit=False)[исходный код]
-
Базовый класс анимаций.
Этот класс нельзя использовать напрямую: для реализации необходимого поведения его следует наследовать.
Примечание
Созданный объект Animation необходимо сохранить в переменной, которая будет существовать всё время работы анимации. В противном случае объект Animation будет удалён сборщиком мусора, и анимация остановится.
- Параметры:
-
-
fig
Figure -
Объект figure, используемый для получения необходимых событий, таких как отрисовка или изменение размера.
- event_sourceобъект, необязательный
-
Класс, способный выполнять обратный вызов при возникновении заданных событий, а также останавливать и запускать его.
Примерами могут служить таймеры (см.
TimedAnimation) и уведомления файловой системы. - blitbool, по умолчанию: False
-
Используется ли блиттинг для оптимизации отрисовки. Если бэкенд не поддерживает блиттинг, этот параметр не оказывает эффекта.
-
fig
См. также
- __init__(fig, event_source=None, blit=False)[исходный код]
Методы
__init__(fig[, event_source, blit])Возвращает новую последовательность данных о кадрах.
Возвращает новую последовательность данных о сохранённых/кэшированных кадрах.
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()[исходный код]
-
Возвращает новую последовательность данных о кадрах.
- new_saved_frame_seq()[исходный код]
-
Возвращает новую последовательность данных о сохранённых/кэшированных кадрах.
- pause()[исходный код]
-
Приостанавливает анимацию.
- resume()[исходный код]
-
Возобновляет анимацию.
- save(filename, writer=None, fps=None, dpi=None, codec=None, bitrate=None, extra_args=None, metadata=None, extra_anim=None, savefig_kwargs=None, *, progress_callback=None)[исходный код]
-
Сохраняет анимацию в видеофайл, отрисовывая каждый кадр.
- Параметры:
-
- filenamestr
-
Имя выходного файла, например,
mymovie.mp4. -
writer
MovieWriterили str, по умолчанию:rcParams["animation.writer"](значение по умолчанию:'ffmpeg') -
Экземпляр
MovieWriterили ключ, указывающий класс для использования, например 'ffmpeg'. - fpsint, необязательный
-
Частота кадров видео (в секунду). Если не задана, используется частота кадров, заданная интервалом кадров анимации.
-
dpifloat, по умолчанию:
rcParams["savefig.dpi"](значение по умолчанию:'figure') -
Задаёт разрешение кадров видео в точках на дюйм. Вместе с размером figure в дюймах этот параметр определяет размер видео.
-
codecstr, по умолчанию:
rcParams["animation.codec"](значение по умолчанию:'h264'). -
Видеокодек. Не все кодеки поддерживаются конкретным
MovieWriter. -
bitrateint, по умолчанию:
rcParams["animation.bitrate"](значение по умолчанию:-1) -
Битрейт видео в килобитах в секунду. Чем выше значение, тем лучше качество видео, но тем больше размер файла. Значение -1 позволяет используемому кодировщику видео самостоятельно выбрать битрейт.
- extra_argsсписок str или None, необязательный
-
Дополнительные аргументы командной строки, передаваемые используемому кодировщику видео. Эти аргументы передаются кодировщику последними, непосредственно перед именем выходного файла. Значение по умолчанию None означает использование
rcParams["animation.[name-of-encoder]_args"]для встроенных средств записи. - metadatadict[str, str], по умолчанию: {}
-
Словарь ключей и значений метаданных, включаемых в выходной файл. Могут быть полезны следующие ключи: title, artist, genre, subject, copyright, srcform, comment.
- extra_animlist, по умолчанию: []
-
Дополнительные объекты
Animation, которые следует включить в сохраняемый видеофайл. Они должны относиться к тому же экземпляруFigure. Кроме того, кадры анимаций просто объединяются, поэтому кадры разных анимаций должны соответствовать друг другу в соотношении 1:1. - savefig_kwargsdict, по умолчанию: {}
-
Именованные аргументы, передаваемые каждому вызову
savefig, который используется для сохранения отдельных кадров. - progress_callbackфункция, необязательный
-
Функция обратного вызова, вызываемая для каждого кадра, чтобы сообщать о ходе сохранения. Она должна иметь следующую сигнатуру:
def func(current_frame: int, total_frames: int) -> Any
где current_frame — номер текущего кадра, а total_frames — общее количество кадров, которые нужно сохранить. Если общее количество кадров определить нельзя, значение total_frames будет равно None. Возвращаемые значения могут существовать, но игнорируются.
Пример кода для вывода сведений о ходе выполнения в stdout:
progress_callback = lambda i, n: print(f'Saving frame {i}/{n}')
Примечания
fps, codec, bitrate, extra_args и metadata используются для создания экземпляра
MovieWriterи могут быть переданы только в том случае, если writer — строка. Если передать их с ненулевым значением None, а writer являетсяMovieWriter, будет вызвано исключениеRuntimeError.
- to_html5_video(embed_limit=None)[исходный код]
-
Преобразует анимацию в тег HTML5
<video>.Анимация сохраняется как видео h264, закодированное в base64 непосредственно внутри тега видео HTML5. При этом учитываются
rcParams["animation.writer"](значение по умолчанию:'ffmpeg') иrcParams["animation.bitrate"](значение по умолчанию:-1). Скорость также регулируется параметром interval, а параметр repeat определяет, будет ли воспроизводиться цикл.- Параметры:
-
- embed_limitfloat, необязательный
-
Ограничение размера возвращаемой анимации в МБ. Если ограничение превышено, анимация не создаётся. По умолчанию
rcParams["animation.embed_limit"](значение по умолчанию:20.0) = 20.0.
- Возвращает:
-
- str
-
Тег видео HTML5 со встроенной анимацией в виде видео h264, закодированного в base64. Если превышено значение embed_limit, возвращается строка "Video too large to embed."
- to_jshtml(fps=None, embed_frames=True, default_mode=None)[исходный код]
-
Создаёт HTML-представление анимации.
- Параметры:
-
- fpsint, необязательный
-
Частота кадров видео (в секунду). Если не задана, используется частота кадров, заданная интервалом кадров анимации.
- embed_framesbool, необязательный
- default_modestr, необязательный
-
Действие по завершении анимации. Должно быть одним из значений
{'loop', 'once', 'reflect'}. Если параметр repeat равен True, по умолчанию используется'loop', в противном случае —'once'.
- Возвращает:
-
- str
-
HTML-представление анимации, встроенной в виде объекта js и созданной с помощью
HTMLWriter.
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.animation.Animation.html