matplotlib.backends.backend_svg
#
- class matplotlib.backends.backend_svg.FigureCanvasSVG(figure=None)[source]#
基类:
FigureCanvasBase
- draw()[source]#
渲染
Figure
。此方法必须遍历 Artist 树,即使没有产生输出,因为它会触发用户在将输出保存到磁盘之前可能希望访问的延迟工作。例如,计算限制、自动限制和刻度值。
- filetypes = {'svg': '可缩放矢量图形', 'svgz': '可缩放矢量图形'}#
- fixed_dpi = 72#
- get_default_filetype()[source]#
返回由
rcParams["savefig.format"]
指定的默认savefig文件格式(默认:'png'
)。返回的字符串不包含句点。此方法在仅支持单一文件类型的后端中被覆盖。
- print_svg(filename, *, bbox_inches_restore=None, metadata=None)[source]#
- 参数:
- filenamestr 或 类路径 或 类文件
输出目标;如果是一个字符串,将打开一个文件进行写入。
- metadatadict[str, Any], optional
SVG文件中的元数据,定义为字符串、日期时间或字符串列表的键值对,例如:
{'Creator': 'My software', 'Contributor': ['Me', 'My Friend'], 'Title': 'Awesome'}
。标准键及其值类型为:
str:
'Coverage'
、'Description'
、'Format'
、'Identifier'
、'Language'
、'Relation'
、'Source'
、'Title'
和'Type'
。str 或 字符串列表:
'Contributor'
、'Creator'
、'Keywords'
、'Publisher'
和'Rights'
。str、date、datetime 或 相同类型元组:
'Date'
。如果不是字符串,则会格式化为ISO 8601格式。
已为
'Creator'
、'Date'
、'Format'
和'Type'
预定义了值。可以通过将它们设置为None
来移除它们。信息被编码为 Dublin Core Metadata。
- class matplotlib.backends.backend_svg.RendererSVG(width, height, svgwriter, basename=None, image_dpi=72, *, metadata=None)[source]#
基类:
RendererBase
- draw_gouraud_triangles(gc, triangles_array, colors_array, transform)[source]#
绘制一系列 Gouraud 三角形。
- 参数:
- gc
GraphicsContextBase
图形上下文。
- triangles_array(N, 3, 2) 类数组
N个三角形的 (x, y) 点数组。
- colors_array(N, 3, 4) 类数组
N个三角形每个点的 RGBA 颜色数组。
- transform
Transform
应用于点的仿射变换。
- gc
- draw_image(gc, x, y, im, transform=None)[source]#
绘制 RGBA 图像。
- 参数:
- gc
GraphicsContextBase
带有裁剪信息的图形上下文。
- x浮点数
从画布左侧开始的物理单位(即点或像素)距离。
- y浮点数
从画布底部开始的物理单位(即点或像素)距离。
- im(N, M, 4) array of
numpy.uint8
RGBA 像素数组。
- transform
Affine2DBase
当且仅当具体后端被编写为
option_scale_image
返回True
,仿射变换(即Affine2DBase
)可以传递给draw_image
。变换的平移向量以物理单位(即点或像素)给出。请注意,该变换不会覆盖x和y,并且必须在通过x和y平移结果之前应用(这可以通过将x和y添加到由transform定义的平移向量中来完成)。
- gc
- draw_markers(gc, marker_path, marker_trans, path, trans, rgbFace=None)[source]#
在 path 的每个顶点(不包括控制点)绘制一个标记。
基础(回退)实现会多次调用
draw_path
。后端可能希望覆盖此方法,以便只绘制一次标记并多次重用它。
- draw_path_collection(gc, master_transform, paths, all_transforms, offsets, offset_trans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position)[source]#
绘制一组 paths。
每个路径首先由 all_transforms 中的相应条目(一个 (3, 3) 矩阵列表)变换,然后由 master_transform 变换。然后,它们再由 offsets 中的相应条目平移,该偏移量首先由 offset_trans 变换。
facecolors、edgecolors、linewidths、linestyles 和 antialiased 是设置相应属性的列表。
offset_position 现在未使用,但参数保留是为了向后兼容。
基础(回退)实现会多次调用
draw_path
。后端可能希望覆盖此方法,以便只渲染每组路径数据一次,然后使用不同的偏移量、颜色、样式等多次引用该路径。生成器方法_iter_collection_raw_paths
和_iter_collection
用于帮助(并标准化)跨后端的实现。强烈建议使用这些生成器,以便对draw_path_collection
的行为进行全局更改。
- draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[source]#
绘制文本实例。
- 参数:
- gc
GraphicsContextBase
图形上下文。
- x浮点数
文本在显示坐标中的 x 位置。
- y浮点数
文本基线在显示坐标中的 y 位置。
- sstr
文本字符串。
- prop
FontProperties
字体属性。
- angle浮点数
逆时针旋转角度(度)。
- ismath布尔值 或 "TeX"
如果为 True,则使用 mathtext 解析器。
- mtext
Text
要渲染的原始文本对象。
- gc
备注
后端实现者注意事项
RendererBase.draw_text
也支持将“TeX”传递给ismath参数以使用TeX渲染,但实际的渲染后端不需要这样做,实际上许多内置后端也不支持。相反,TeX渲染由draw_tex
提供。
- get_image_magnification()[source]#
获取传递给
draw_image
的图像的放大因子。允许后端具有与其他 Artist 不同的图像分辨率。
- get_text_width_height_descent(s, prop, ismath)[source]#
获取字符串 s 在显示坐标中的宽度、高度和下降量(从底部到基线的偏移量),使用
FontProperties
prop。字符串 s 开头和结尾的空白字符包含在报告的宽度中。
- option_image_nocomposite()[source]#
返回是否应跳过Matplotlib的图像合成。
栅格后端通常应返回False(让C级栅格化器处理图像合成);矢量后端通常应返回
not rcParams["image.composite_image"]
。
- option_scale_image()[source]#
返回是否支持
draw_image
中的任意仿射变换(大多数矢量后端为True)。