matplotlib.figure.Figure#

class matplotlib.figure.Figure(figsize=None, dpi=None, *, facecolor=None, edgecolor=None, linewidth=0.0, frameon=None, subplotpars=None, tight_layout=None, constrained_layout=None, layout=None, **kwargs)[source]#

The top level container for all the plot elements.

See matplotlib.figure for an index of class methods.

Attributes:
patch

The Rectangle instance representing the figure background patch.

suppressComposite

For multiple images, the figure will make composite images depending on the renderer option_image_nocomposite function. If suppressComposite is a boolean, this will override the renderer.

Parameters:
figsize2-tuple of floats, default: rcParams["figure.figsize"] (default: [6.4, 4.8])

Figure dimension (width, height) in inches.

dpifloat, default: rcParams["figure.dpi"] (default: 100.0)

Dots per inch.

facecolordefault: rcParams["figure.facecolor"] (default: 'white')

The figure patch facecolor.

edgecolordefault: rcParams["figure.edgecolor"] (default: 'white')

The figure patch edge color.

linewidthfloat

The linewidth of the frame (i.e. the edge linewidth of the figure patch).

frameonbool, default: rcParams["figure.frameon"] (default: True)

If False, suppress drawing the figure background patch.

subplotparsSubplotParams

Subplot parameters. If not given, the default subplot parameters rcParams["figure.subplot.*"] are used.

tight_layoutbool or dict, default: rcParams["figure.autolayout"] (default: False)

Whether to use the tight layout mechanism. See set_tight_layout.

Discouraged

The use of this parameter is discouraged. Please use layout='tight' instead for the common case of tight_layout=True and use set_tight_layout otherwise.

constrained_layoutbool, default: rcParams["figure.constrained_layout.use"] (default: False)

This is equal to layout='constrained'.

Discouraged

The use of this parameter is discouraged. Please use layout='constrained' instead.

layout{'constrained', 'compressed', 'tight', 'none', LayoutEngine, None}, default: None

The layout mechanism for positioning of plot elements to avoid overlapping Axes decorations (labels, ticks, etc). Note that layout managers can have significant performance penalties.

  • 'constrained': The constrained layout solver adjusts Axes sizes to avoid overlapping Axes decorations. Can handle complex plot layouts and colorbars, and is thus recommended.

    See Constrained layout guide for examples.

  • 'compressed': uses the same algorithm as 'constrained', but removes extra space between fixed-aspect-ratio Axes. Best for simple grids of Axes.

  • 'tight': Use the tight layout mechanism. This is a relatively simple algorithm that adjusts the subplot parameters so that decorations do not overlap.

    See Tight layout guide for examples.

  • 'none': Do not use a layout engine.

  • A LayoutEngine instance. Builtin layout classes are ConstrainedLayoutEngine and TightLayoutEngine, more easily accessible by 'constrained' and 'tight'. Passing an instance allows third parties to provide their own layout engine.

If not given, fall back to using the parameters tight_layout and constrained_layout, including their config defaults rcParams["figure.autolayout"] (default: False) and rcParams["figure.constrained_layout.use"] (default: False).

Other Parameters:
**kwargsFigure properties, optional

Property

Description

agg_filter

a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image

alpha

scalar or None

animated

bool

canvas

FigureCanvas

clip_box

BboxBase or None

clip_on

bool

clip_path

Patch or (Path, Transform) or None

constrained_layout

unknown

constrained_layout_pads

unknown

dpi

float

edgecolor

color

facecolor

color

figheight

float

figure

Figure

figwidth

float

frameon

bool

gid

str

in_layout

bool

label

object

layout_engine

{'constrained', 'compressed', 'tight', 'none', LayoutEngine, None}

linewidth

number

mouseover

bool

path_effects

list of AbstractPathEffect

picker

None or bool or float or callable

rasterized

bool

size_inches

(float, float) or float

sketch_params

(scale: float, length: float, randomness: float)

snap

bool or None

tight_layout

unknown

transform

Transform

url

str

visible

bool

zorder

float