matplotlib.backends.backend_ps#

一个 PostScript 后端,可以生成 PostScript .ps 和 .eps 文件。

matplotlib.backends.backend_ps.FigureCanvas[source]#

FigureCanvasPS 的别名

class matplotlib.backends.backend_ps.FigureCanvasPS(figure=None)[source]#

基类:FigureCanvasBase

draw()[source]#

渲染 Figure

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

filetypes = {'eps': 'Encapsulated Postscript', 'ps': 'Postscript'}#
fixed_dpi = 72#
get_default_filetype()[source]#

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

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

print_eps(outfile, *, metadata=None, papertype=None, orientation='portrait', bbox_inches_restore=None, **kwargs)#
print_ps(outfile, *, metadata=None, papertype=None, orientation='portrait', bbox_inches_restore=None, **kwargs)#
class matplotlib.backends.backend_ps.RendererPS(width, height, pswriter, imagedpi=72)[source]#

基类:RendererPDFPSBase

渲染器使用一个图形上下文实例处理所有绘图原语,该实例控制颜色/样式。

create_hatch(hatch, linewidth)[source]#
draw_gouraud_triangles(gc, points, colors, trans)[source]#

绘制一系列 Gouraud 三角形。

参数:
gcGraphicsContextBase

图形上下文。

triangles_array(N, 3, 2) 类数组

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

colors_array(N, 3, 4) 类数组

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

transformTransform

应用于点的仿射变换。

draw_image(gc, x, y, im, transform=None)[source]#

绘制 RGBA 图像。

参数:
gcGraphicsContextBase

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

x浮点数

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

y浮点数

从画布底部开始的物理单位(即点或像素)距离。

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

RGBA 像素数组。

transformAffine2DBase

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

draw_markers(gc, marker_path, marker_trans, path, trans, rgbFace=None)[source]#

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

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

参数:
gcGraphicsContextBase

图形上下文。

marker_pathPath

标记的路径。

marker_transTransform

应用于标记的仿射变换。

pathPath

绘制标记的位置。

transTransform

应用于路径的仿射变换。

rgbFace颜色,可选
draw_mathtext(gc, x, y, s, prop, angle)[source]#

使用 matplotlib.mathtext 绘制数学文本。

draw_path(gc, path, transform, rgbFace=None)[source]#

使用给定的仿射变换绘制 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 进行变换。

facecolorsedgecolorslinewidthslinestylesantialiased 是设置相应属性的列表。

offset_position 现在未使用,但参数保留是为了向后兼容。

基本(回退)实现会多次调用 draw_path。后端可能希望覆盖此方法,以便每个路径数据集只渲染一次,然后使用不同的偏移量、颜色、样式等多次引用该路径。提供了生成器方法 _iter_collection_raw_paths_iter_collection 来帮助(和标准化)后端之间的实现。强烈建议使用这些生成器,以便对 draw_path_collection 行为的更改可以在全局范围内进行。

draw_tex(gc, x, y, s, prop, angle, *, mtext=None)[source]#

绘制一个 TeX 实例。

参数:
gcGraphicsContextBase

图形上下文。

x浮点数

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

y浮点数

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

s字符串

TeX 文本字符串。

propFontProperties

字体属性。

angle浮点数

逆时针旋转角度(度)。

mtextText

要渲染的原始文本对象。

draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[source]#

绘制文本实例。

参数:
gcGraphicsContextBase

图形上下文。

x浮点数

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

y浮点数

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

s字符串

文本字符串。

propFontProperties

字体属性。

angle浮点数

逆时针旋转角度(度)。

ismath布尔值 或 "TeX"

如果为 True,则使用 mathtext 解析器。

mtextText

要渲染的原始文本对象。

备注

后端实现者注意事项

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

get_image_magnification()[source]#

获取传递给 draw_image 的图像的放大因子。允许后端以与其它 Artist 不同的分辨率显示图像。

set_color(r, g, b, store=True)[source]#
set_font(fontname, fontsize, store=True)[source]#
set_linecap(linecap, store=True)[source]#
set_linedash(offset, seq, store=True)[source]#
set_linejoin(linejoin, store=True)[source]#
set_linewidth(linewidth, store=True)[source]#
matplotlib.backends.backend_ps.get_bbox_header(lbrt, rotated=False)[source]#

[已弃用] 返回给定 bbox lbrt=(l, b, r, t) 的 PostScript 头部字符串。可选地,返回旋转命令。

备注

自 3.9 版本起已弃用。

matplotlib.backends.backend_ps.gs_distill(tmpfile, eps=False, ptype='letter', bbox=None, rotated=False)[source]#

使用 Ghostscript 的 pswrite 或 epswrite 设备精炼文件。这会生成更小的文件,且不包含非法封装的 PostScript 操作符。输出是低级的,将文本转换为轮廓。

matplotlib.backends.backend_ps.pstoeps(tmpfile, bbox=None, rotated=False)[source]#

将 PostScript 转换为封装的 PostScript。eps 文件的 bbox 将被给定的 bbox 参数替换。如果为 None,则使用原始 bbox。

matplotlib.backends.backend_ps.xpdf_distill(tmpfile, eps=False, ptype='letter', bbox=None, rotated=False)[source]#

使用 Ghostscript 的 ps2pdf 和 xpdf/poppler 的 pdftops 精炼文件。这会生成更小的文件,且不包含非法封装的 PostScript 操作符。此精炼器是首选,它生成将文本视为文本的高级 PostScript 输出。