matplotlib

Travis-CI:

Table Of Contents

This Page

animation

matplotlib.animation

class matplotlib.animation.AVConvBase

Bases: matplotlib.animation.FFMpegBase

args_key = 'animation.avconv_args'
exec_key = 'animation.avconv_path'
class matplotlib.animation.AVConvFileWriter(*args, **kwargs)

Bases: matplotlib.animation.AVConvBase, matplotlib.animation.FFMpegFileWriter

class matplotlib.animation.AVConvWriter(fps=5, codec=None, bitrate=None, extra_args=None, metadata=None)

Bases: matplotlib.animation.AVConvBase, matplotlib.animation.FFMpegWriter

Construct a new MovieWriter object.

fps: int
Framerate for movie.
codec: string or None, optional
The codec to use. If None (the default) the setting in the rcParam animation.codec is used.
bitrate: int or None, optional
The bitrate for the saved movie file, which is one way to control the output file size and quality. The default value is None, which uses the value stored in the rcParam animation.bitrate. A value of -1 implies that the bitrate should be determined automatically by the underlying utility.
extra_args: list of strings or None
A list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.
metadata: dict of string:string or None
A dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.
class matplotlib.animation.AbstractMovieWriter

Bases: object

Abstract base class for writing movies. Fundamentally, what a MovieWriter does is provide is a way to grab frames by calling grab_frame().

setup() is called to start the process and finish() is called afterwards.

This class is set up to provide for writing movie frame data to a pipe. saving() is provided as a context manager to facilitate this process as:

with moviewriter.saving(fig, outfile='myfile.mp4', dpi=100):
    # Iterate over frames
    moviewriter.grab_frame(**savefig_kwargs)

The use of the context manager ensures that setup() and finish() are performed as necessary.

An instance of a concrete subclass of this class can be given as the writer argument of Animation.save().

finish()

Finish any processing for writing the movie.

grab_frame(**savefig_kwargs)

Grab the image information from the figure and save as a movie frame. All keyword arguments in savefig_kwargs are passed on to the ‘savefig’ command that saves the figure.

saving(fig, outfile, dpi, *args, **kwargs)

Context manager to facilitate writing the movie file.

All arguments are passed on to setup.

setup(fig, outfile, dpi)

Perform setup for writing the movie file.

fig: matplotlib.Figure instance
The figure object that contains the information for frames
outfile: string
The filename of the resulting movie file
dpi: int
The DPI (or resolution) for the file. This controls the size in pixels of the resulting movie file.
class matplotlib.animation.Animation(fig, event_source=None, blit=False)

Bases: object

This class wraps the creation of an animation using matplotlib. It is only a base class which should be subclassed to provide needed behavior.

fig is the figure object that is used to get draw, resize, and any other needed events.

event_source is a class that can run a callback when desired events are generated, as well as be stopped and started. Examples include timers (see TimedAnimation) and file system notifications.

blit is a boolean that controls whether blitting is used to optimize drawing.

new_frame_seq()

Creates a new sequence of frame information.

new_saved_frame_seq()

Creates a new sequence of saved/cached frame information.

save(filename, writer=None, fps=None, dpi=None, codec=None, bitrate=None, extra_args=None, metadata=None, extra_anim=None, savefig_kwargs=None)

Saves a movie file by drawing every frame.

filename is the output filename, e.g., mymovie.mp4

writer is either an instance of AbstractMovieWriter or a string key that identifies a class to use, such as ‘ffmpeg’ or ‘mencoder’. If nothing is passed, the value of the rcparam animation.writer is used.

dpi controls the dots per inch for the movie frames. This combined with the figure’s size in inches controls the size of the movie.

savefig_kwargs is a dictionary containing keyword arguments to be passed on to the ‘savefig’ command which is called repeatedly to save the individual frames. This can be used to set tight bounding boxes, for example.

extra_anim is a list of additional Animation objects that should be included in the saved movie file. These need to be from the same matplotlib.Figure instance. Also, animation frames will just be simply combined, so there should be a 1:1 correspondence between the frames from the different animations.

These remaining arguments are used to construct a MovieWriter instance when necessary and are only considered valid if writer is not a MovieWriter instance.

fps is the frames per second in the movie. Defaults to None, which will use the animation’s specified interval to set the frames per second.

codec is the video codec to be used. Not all codecs are supported by a given MovieWriter. If none is given, this defaults to the value specified by the rcparam animation.codec.

bitrate specifies the amount of bits used per second in the compressed movie, in kilobits per second. A higher number means a higher quality movie, but at the cost of increased file size. If no value is given, this defaults to the value given by the rcparam animation.bitrate.

extra_args is a list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.

metadata is a dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.

to_html5_video()

Returns animation as an HTML5 video tag.

This saves the animation as an h264 video, encoded in base64 directly into the HTML5 video tag. This respects the rc parameters for the writer as well as the bitrate. This also makes use of the interval to control the speed, and uses the repeat parameter to decide whether to loop.

class matplotlib.animation.ArtistAnimation(fig, artists, *args, **kwargs)

Bases: matplotlib.animation.TimedAnimation

Before calling this function, all plotting should have taken place and the relevant artists saved.

artists is a list, with each list entry a collection of artists that represent what needs to be enabled on each frame. These will be disabled for other frames.

class matplotlib.animation.FFMpegBase

Bases: object

args_key = 'animation.ffmpeg_args'
exec_key = 'animation.ffmpeg_path'
output_args
class matplotlib.animation.FFMpegFileWriter(*args, **kwargs)

Bases: matplotlib.animation.FileMovieWriter, matplotlib.animation.FFMpegBase

supported_formats = ['png', 'jpeg', 'ppm', 'tiff', 'sgi', 'bmp', 'pbm', 'raw', 'rgba']
class matplotlib.animation.FFMpegWriter(fps=5, codec=None, bitrate=None, extra_args=None, metadata=None)

Bases: matplotlib.animation.MovieWriter, matplotlib.animation.FFMpegBase

Construct a new MovieWriter object.

fps: int
Framerate for movie.
codec: string or None, optional
The codec to use. If None (the default) the setting in the rcParam animation.codec is used.
bitrate: int or None, optional
The bitrate for the saved movie file, which is one way to control the output file size and quality. The default value is None, which uses the value stored in the rcParam animation.bitrate. A value of -1 implies that the bitrate should be determined automatically by the underlying utility.
extra_args: list of strings or None
A list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.
metadata: dict of string:string or None
A dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.
class matplotlib.animation.FileMovieWriter(*args, **kwargs)

Bases: matplotlib.animation.MovieWriter

MovieWriter subclass that handles writing to a file.

cleanup()
finish()
frame_format

Format (png, jpeg, etc.) to use for saving the frames, which can be decided by the individual subclasses.

frame_size_can_vary = True
grab_frame(**savefig_kwargs)

Grab the image information from the figure and save as a movie frame. All keyword arguments in savefig_kwargs are passed on to the ‘savefig’ command that saves the figure.

setup(fig, outfile, dpi, frame_prefix='_tmp', clear_temp=True)

Perform setup for writing the movie file.

fig: matplotlib.Figure instance
The figure object that contains the information for frames
outfile: string
The filename of the resulting movie file
dpi: int
The DPI (or resolution) for the file. This controls the size in pixels of the resulting movie file.
frame_prefix: string, optional
The filename prefix to use for the temporary files. Defaults to ‘_tmp’
clear_temp: bool
Specifies whether the temporary files should be deleted after the movie is written. (Useful for debugging.) Defaults to True.
class matplotlib.animation.FuncAnimation(fig, func, frames=None, init_func=None, fargs=None, save_count=None, **kwargs)

Bases: matplotlib.animation.TimedAnimation

Makes an animation by repeatedly calling a function func, passing in (optional) arguments in fargs.

frames can be a generator, an iterable, or a number of frames.

init_func is a function used to draw a clear frame. If not given, the results of drawing from the first item in the frames sequence will be used. This function will be called once before the first frame.

If blit=True, func and init_func must return an iterable of artists to be re-drawn.

kwargs include repeat, repeat_delay, and interval: interval draws a new frame every interval milliseconds. repeat controls whether the animation should repeat when the sequence of frames is completed. repeat_delay optionally adds a delay in milliseconds before repeating the animation.

new_frame_seq()
new_saved_frame_seq()
class matplotlib.animation.ImageMagickBase

Bases: object

args_key = 'animation.convert_args'
delay
exec_key = 'animation.convert_path'
classmethod isAvailable()

Check to see if a ImageMagickWriter is actually available

Done by first checking the windows registry (if applicable) and then running the commandline tool.

output_args
class matplotlib.animation.ImageMagickFileWriter(*args, **kwargs)

Bases: matplotlib.animation.ImageMagickBase, matplotlib.animation.FileMovieWriter

supported_formats = ['png', 'jpeg', 'ppm', 'tiff', 'sgi', 'bmp', 'pbm', 'raw', 'rgba']
class matplotlib.animation.ImageMagickWriter(fps=5, codec=None, bitrate=None, extra_args=None, metadata=None)

Bases: matplotlib.animation.ImageMagickBase, matplotlib.animation.MovieWriter

Construct a new MovieWriter object.

fps: int
Framerate for movie.
codec: string or None, optional
The codec to use. If None (the default) the setting in the rcParam animation.codec is used.
bitrate: int or None, optional
The bitrate for the saved movie file, which is one way to control the output file size and quality. The default value is None, which uses the value stored in the rcParam animation.bitrate. A value of -1 implies that the bitrate should be determined automatically by the underlying utility.
extra_args: list of strings or None
A list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.
metadata: dict of string:string or None
A dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.
class matplotlib.animation.MencoderBase

Bases: object

allowed_metadata = ['name', 'artist', 'genre', 'subject', 'copyright', 'srcform', 'comment']
args_key = 'animation.mencoder_args'
exec_key = 'animation.mencoder_path'
output_args
class matplotlib.animation.MencoderFileWriter(*args, **kwargs)

Bases: matplotlib.animation.FileMovieWriter, matplotlib.animation.MencoderBase

supported_formats = ['png', 'jpeg', 'tga', 'sgi']
class matplotlib.animation.MencoderWriter(fps=5, codec=None, bitrate=None, extra_args=None, metadata=None)

Bases: matplotlib.animation.MovieWriter, matplotlib.animation.MencoderBase

Construct a new MovieWriter object.

fps: int
Framerate for movie.
codec: string or None, optional
The codec to use. If None (the default) the setting in the rcParam animation.codec is used.
bitrate: int or None, optional
The bitrate for the saved movie file, which is one way to control the output file size and quality. The default value is None, which uses the value stored in the rcParam animation.bitrate. A value of -1 implies that the bitrate should be determined automatically by the underlying utility.
extra_args: list of strings or None
A list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.
metadata: dict of string:string or None
A dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.
class matplotlib.animation.MovieWriter(fps=5, codec=None, bitrate=None, extra_args=None, metadata=None)

Bases: matplotlib.animation.AbstractMovieWriter

Base class for writing movies. Fundamentally, what a MovieWriter does is provide is a way to grab frames by calling grab_frame(). setup() is called to start the process and finish() is called afterwards. This class is set up to provide for writing movie frame data to a pipe. saving() is provided as a context manager to facilitate this process as:

with moviewriter.saving(fig, outfile='myfile.mp4', dpi=100):
    # Iterate over frames
    moviewriter.grab_frame(**savefig_kwargs)

The use of the context manager ensures that setup and cleanup are performed as necessary.

frame_format: string
The format used in writing frame data, defaults to ‘rgba’

Construct a new MovieWriter object.

fps: int
Framerate for movie.
codec: string or None, optional
The codec to use. If None (the default) the setting in the rcParam animation.codec is used.
bitrate: int or None, optional
The bitrate for the saved movie file, which is one way to control the output file size and quality. The default value is None, which uses the value stored in the rcParam animation.bitrate. A value of -1 implies that the bitrate should be determined automatically by the underlying utility.
extra_args: list of strings or None
A list of extra string arguments to be passed to the underlying movie utility. The default is None, which passes the additional arguments in the ‘animation.extra_args’ rcParam.
metadata: dict of string:string or None
A dictionary of keys and values for metadata to include in the output file. Some keys that may be of use include: title, artist, genre, subject, copyright, srcform, comment.
classmethod bin_path()

Returns the binary path to the commandline tool used by a specific subclass. This is a class method so that the tool can be looked for before making a particular MovieWriter subclass available.

cleanup()

Clean-up and collect the process used to write the movie file.

finish()

Finish any processing for writing the movie.

frame_size

A tuple (width,height) in pixels of a movie frame.

frame_size_can_vary = False
grab_frame(**savefig_kwargs)

Grab the image information from the figure and save as a movie frame. All keyword arguments in savefig_kwargs are passed on to the ‘savefig’ command that saves the figure.

classmethod isAvailable()

Check to see if a MovieWriter subclass is actually available by running the commandline tool.

setup(fig, outfile, dpi)

Perform setup for writing the movie file.

fig: matplotlib.Figure instance
The figure object that contains the information for frames
outfile: string
The filename of the resulting movie file
dpi: int
The DPI (or resolution) for the file. This controls the size in pixels of the resulting movie file.
class matplotlib.animation.MovieWriterRegistry

Bases: object

ensure_not_dirty()

If dirty, reasks the writers if they are available

is_available(name)
list()

Get a list of available MovieWriters.

register(name)
reset_available_writers()

Reset the available state of all registered writers

set_dirty()

Sets a flag to re-setup the writers

class matplotlib.animation.TimedAnimation(fig, interval=200, repeat_delay=None, repeat=True, event_source=None, *args, **kwargs)

Bases: matplotlib.animation.Animation

Animation subclass that supports time-based animation, drawing a new frame every interval milliseconds.

repeat controls whether the animation should repeat when the sequence of frames is completed.

repeat_delay optionally adds a delay in milliseconds before repeating the animation.