matplotlib.backends.backend_cairo
A Cairo backend for matplotlib
Author: | Steve Chaplin and others |
---|
This backend depends on cairocffi or pycairo.
-
matplotlib.backends.backend_cairo.
FigureCanvas
-
alias of
matplotlib.backends.backend_cairo.FigureCanvasCairo
-
class
matplotlib.backends.backend_cairo.
FigureCanvasCairo
( figure=None ) [source] -
Bases:
matplotlib.backend_bases.FigureCanvasBase
-
copy_from_bbox
( bbox ) [source]
-
print_pdf
( fobj, *args, **kwargs ) [source]
-
print_png
( fobj ) [source]
-
print_ps
( fobj, *args, **kwargs ) [source]
-
print_raw
( fobj )
-
print_rgba
( fobj ) [source]
-
print_svg
( fobj, *args, **kwargs ) [source]
-
print_svgz
( fobj, *args, **kwargs ) [source]
-
restore_region
( region ) [source]
-
-
class
matplotlib.backends.backend_cairo.
GraphicsContextCairo
( renderer ) [source] -
Bases:
matplotlib.backend_bases.GraphicsContextBase
-
get_rgb
( ) [source] -
Return a tuple of three or four floats from 0-1.
-
restore
( ) [source] -
Restore the graphics context from the stack - needed only for backends that save graphics contexts on a stack.
-
set_alpha
( alpha ) [source] -
Set the alpha value used for blending - not supported on all backends.
If
alpha=None
(the default), the alpha components of the foreground and fill colors will be used to set their respective transparencies (where applicable); otherwise,alpha
will override them.
-
set_antialiased
( b ) [source] -
Set whether object should be drawn with antialiased rendering.
-
set_capstyle
( cs ) [source] -
Set how to draw endpoints of lines.
Parameters: -
cs
CapStyle
or {'butt', 'projecting', 'round'}
-
cs
-
set_clip_path
( path ) [source] -
Set the clip path to a
TransformedPath
or None.
-
set_dashes
( offset, dashes ) [source] -
Set the dash style for the gc.
Parameters: - dash_offset float or None
-
The offset (usually 0).
- dash_list array-like or None
-
The on-off sequence as points.
Notes
(None, None)
specifies a solid line.See p. 107 of to PostScript blue book for more info.
-
set_foreground
( fg, isRGBA=None ) [source] -
Set the foreground color.
Parameters: - fg color
- isRGBA bool
-
If fg is known to be an
(r, g, b, a)
tuple, isRGBA can be set to True to improve performance.
-
set_joinstyle
( js ) [source] -
Set how to draw connections between line segments.
Parameters: -
js
JoinStyle
or {'miter', 'round', 'bevel'}
-
js
-
set_linewidth
( w ) [source] -
Set the linewidth in points.
-
-
class
matplotlib.backends.backend_cairo.
RendererCairo
( dpi ) [source] -
Bases:
matplotlib.backend_bases.RendererBase
-
draw_image
( gc, x, y, im ) [source] -
Draw an RGBA image.
Parameters: -
gc
GraphicsContextBase
-
A graphics context with clipping information.
- x scalar
-
The distance in physical units (i.e., dots or pixels) from the left hand side of the canvas.
- y scalar
-
The distance in physical units (i.e., dots or pixels) from the bottom side of the canvas.
- im (N, M, 4) array-like of np.uint8
-
An array of RGBA pixels.
-
transform
matplotlib.transforms.Affine2DBase
-
If and only if the concrete backend is written such that
option_scale_image()
returnsTrue
, an affine transformation (i.e., anAffine2DBase
) may be passed todraw_image()
. The translation vector of the transformation is given in physical units (i.e., dots or pixels). Note that the transformation does not override x and y, and has to be applied before translating the result by x and y (this can be accomplished by adding x and y to the translation vector defined by transform).
-
gc
-
draw_markers
( gc, marker_path, marker_trans, path, transform, rgbFace=None ) [source] -
Draw a marker at each of path's vertices (excluding control points).
This provides a fallback implementation of draw_markers that makes multiple calls to
draw_path()
. Some backends may want to override this method in order to draw the marker only once and reuse it multiple times.Parameters: -
gc
GraphicsContextBase
-
The graphics context.
-
marker_trans
matplotlib.transforms.Transform
-
An affine transform applied to the marker.
-
trans
matplotlib.transforms.Transform
-
An affine transform applied to the path.
-
gc
-
draw_path
( gc, path, transform, rgbFace=None ) [source] -
Draw a
Path
instance using the given affine transform.
-
draw_text
( gc, x, y, s, prop, angle, ismath=False, mtext=None ) [source] -
Draw the text instance.
Parameters: -
gc
GraphicsContextBase
-
The graphics context.
- x float
-
The x location of the text in display coords.
- y float
-
The y location of the text baseline in display coords.
- s str
-
The text string.
-
prop
matplotlib.font_manager.FontProperties
-
The font properties.
- angle float
-
The rotation angle in degrees anti-clockwise.
-
mtext
matplotlib.text.Text
-
The original text object to be rendered.
Notes
Note for backend implementers:
When you are trying to determine if you have gotten your bounding box right (which is what enables the text layout/alignment to work properly), it helps to change the line in text.py:
if 0: bbox_artist(self, renderer)
to if 1, and then the actual bounding box will be plotted along with your text.
-
gc
-
property
fontangles
-
property
fontweights
-
get_canvas_width_height
( ) [source] -
Return the canvas width and height in display coords.
-
get_text_width_height_descent
( s, prop, ismath ) [source] -
Get the width, height, and descent (offset from the bottom to the baseline), in display coords, of the string s with
FontProperties
prop.
-
property
mathtext_parser
-
new_gc
( ) [source] -
Return an instance of a
GraphicsContextBase
.
-
points_to_pixels
( points ) [source] -
Convert points to display units.
You need to override this function (unless your backend doesn't have a dpi, e.g., postscript or svg). Some imaging systems assume some value for pixels per inch:
points to pixels = points * pixels_per_inch/72 * dpi/72
Parameters: - points float or array-like
-
a float or a numpy array of float
Returns: - Points converted to pixels
-
set_ctx_from_surface
( surface ) [source]
-
set_width_height
( width, height ) [source]
-
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/backend_cairo_api.html