matplotlib.backends.backend_svg#

matplotlib.backends.backend_svg.FigureCanvas[源代码]#

FigureCanvasSVG 的别名

class matplotlib.backends.backend_svg.FigureCanvasSVG(figure=None)[源代码][源代码]#

基类:FigureCanvasBase

draw()[源代码][源代码]#

渲染 Figure

此方法必须遍历艺术家树,即使没有产生输出,因为它触发了用户可能在保存输出到磁盘之前想要访问的延迟工作。例如计算极限、自动极限和刻度值。

filetypes = {'svg': 'Scalable Vector Graphics', 'svgz': 'Scalable Vector Graphics'}#
fixed_dpi = 72#
get_default_filetype()[源代码][源代码]#

返回在 rcParams["savefig.format"] (default: 'png') 中指定的默认 savefig 文件格式。

返回的字符串不包含句号。此方法在仅支持单一文件类型的后端中被重写。

print_svg(filename, *, bbox_inches_restore=None, metadata=None)[源代码][源代码]#
参数:
文件名str 或 path-like 或 file-like

输出目标;如果是字符串,将打开一个文件进行写入。

元数据dict[str, Any], 可选

SVG 文件中的元数据定义为字符串、日期时间或字符串列表的键值对,例如 {'Creator': 'My software', 'Contributor': ['Me', 'My Friend'], 'Title': 'Awesome'}

标准键及其值类型为:

  • str: '覆盖范围', '描述', '格式', '标识符', '语言', '关系', '来源', '标题', 和 '类型'.

  • strlist of str: '贡献者', '创作者', '关键词', '出版者', 和 '权利'.

  • str, date, datetime, 或相同类型的 tuple: 'Date'. 如果不是 str,则将格式化为 ISO 8601。

'Creator''Date''Format''Type' 的值已经预定义。可以通过将它们设置为 None 来移除。

信息被编码为 都柏林核心元数据

print_svgz(filename, **kwargs)[源代码][源代码]#
class matplotlib.backends.backend_svg.RendererSVG(width, height, svgwriter, basename=None, image_dpi=72, *, metadata=None)[源代码][源代码]#

基类:RendererBase

close_group(s)[源代码][源代码]#

用标签 s 关闭一个分组元素。

仅由SVG渲染器使用。

draw_gouraud_triangles(gc, triangles_array, colors_array, transform)[源代码][源代码]#

绘制一系列 Gouraud 三角形。

参数:
gcGraphicsContextBase

图形上下文。

三角形数组(N, 3, 2) 数组类

三角形的 N 个 (x, y) 点数组。

颜色数组(N, 3, 4) 数组类

每个三角形点的 N 个 RGBA 颜色数组。

变换 : Transform转换

应用于点的仿射变换。

draw_image(gc, x, y, im, transform=None)[源代码][源代码]#

绘制一个RGBA图像。

参数:
gcGraphicsContextBase

带有裁剪信息的图形上下文。

x标量

画布左侧的物理单位(即点或像素)距离。

y标量

画布底部边缘的物理单位(即点或像素)距离。

im : (N, M, 4) 的 numpy.uint8 数组(N, M, 4) 数组

一个RGBA像素数组。

变换 : Affine2DBaseAffine2DBase

仅当具体后端被编写为 option_scale_image 返回 True 时,一个仿射变换(即,一个 Affine2DBase)*可能* 被传递给 draw_image。变换的平移向量以物理单位(即,点或像素)给出。注意,该变换不会覆盖 xy,并且必须在将结果通过 xy 进行平移之前应用(这可以通过将 xy 添加到由 transform 定义的平移向量来实现)。

draw_markers(gc, marker_path, marker_trans, path, trans, rgbFace=None)[源代码][源代码]#

path 的每个顶点(不包括控制点)绘制一个标记。

基础(回退)实现会多次调用 draw_path。后端可能希望重写此方法,以便只绘制一次标记并多次重用它。

参数:
gcGraphicsContextBase

图形上下文。

marker_path路径

标记的路径。

marker_trans转换

应用于标记的仿射变换。

路径 : Path路径

绘制标记的位置。

trans转换

应用于路径的仿射变换。

rgbFace : color, 可选颜色, 可选
draw_path(gc, path, transform, rgbFace=None)[源代码][源代码]#

使用给定的仿射变换绘制 Path 实例。

draw_path_collection(gc, master_transform, paths, all_transforms, offsets, offset_trans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position)[源代码][源代码]#

绘制一组 路径

每个路径首先由 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)[源代码][源代码]#

绘制一个文本实例。

参数:
gcGraphicsContextBase

图形上下文。

x浮动

文本在显示坐标中的x位置。

y浮动

文本基线在显示坐标中的y位置。

sstr

文本字符串。

propFontProperties

字体属性。

角度浮动

逆时针方向的旋转角度,单位为度。

ismath布尔值或“TeX”

如果为真,使用 mathtext 解析器。

mtext文本

要渲染的原始文本对象。

注释

后端实现者须知:

RendererBase.draw_text 还支持将 "TeX" 传递给 ismath 参数以使用 TeX 渲染,但这对于实际的渲染后端不是必需的,实际上许多内置后端并不支持这一点。相反,TeX 渲染由 draw_tex 提供。

finalize()[源代码][源代码]#
flipy()[源代码][源代码]#

返回 y 值是否从上到下增加。

请注意,这仅影响文本的绘制。

get_canvas_width_height()[源代码][源代码]#

返回显示坐标中的画布宽度和高度。

get_image_magnification()[源代码][源代码]#

获取传递给 draw_image 的图像的放大倍数。允许后端以不同于其他艺术家的分辨率显示图像。

get_text_width_height_descent(s, prop, ismath)[源代码][源代码]#

获取字符串 s 在显示坐标系中的宽度、高度和下降量(从底部到基线的偏移量),使用 FontProperties prop

s 的开头和结尾处的空白字符包含在报告的宽度中。

open_group(s, gid=None)[源代码][源代码]#

使用标签 s*gid*(如果设置)作为 id 打开一个分组元素。

仅由SVG渲染器使用。

option_image_nocomposite()[源代码][源代码]#

返回是否应跳过 Matplotlib 的图像合成。

栅格后端通常应返回 False(让 C 级别的栅格器处理图像合成);矢量后端通常应返回 not rcParams["image.composite_image"]

option_scale_image()[源代码][源代码]#

返回 draw_image 中是否支持任意仿射变换(大多数矢量后端为 True)。

class matplotlib.backends.backend_svg.XMLWriter(file)[源代码][源代码]#

基类:object

参数:
文件可写入的类文本文件对象
close(id)[源代码][源代码]#

关闭打开的元素,直到(并包括)由给定标识符标识的元素。

参数:
id

元素标识符,由 start() 方法返回。

comment(comment)[源代码][源代码]#

向输出流添加注释。

参数:
评论str

注释文本。

data(text)[源代码][源代码]#

将字符数据添加到输出流中。

参数:
文本str

字符数据。

element(tag, text=None, attrib={}, **extra)[源代码][源代码]#

添加一个完整的元素。这相当于按顺序调用 start()data()end()text 参数可以省略。

end(tag=None, indent=True)[源代码][源代码]#

关闭当前元素(由最近一次调用 start() 打开)。

参数:
标签

元素标签。如果给出,标签必须与起始标签匹配。如果省略,则关闭当前元素。

缩进bool, 默认值: True
flush()[源代码][源代码]#

刷新输出流。

start(tag, attrib={}, **extra)[源代码][源代码]#

打开一个新元素。属性可以作为关键字参数给出,或者作为字符串/字符串字典。该方法返回一个不透明的标识符,可以传递给 close() 方法,以关闭所有打开的元素,包括此元素。

参数:
标签

元素标签。

attrib

属性字典。或者,属性可以作为关键字参数给出。

返回:
一个元素标识符。