backend_pdf#

PDF Matplotlib 后端。

作者:Jouni K Seppänen < jks @ iki fi > 等。

matplotlib.backends.backend_pdf。FigureCanvas [来源] #

的别名FigureCanvasPdf

matplotlib.backends.backend_pdf。FigureCanvasPdf (=) [来源] #

基地:FigureCanvasBase

绘制( ) [来源] #

渲染Figure.

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

filetypes = {'pdf': '可移植文档格式'} #
fixed_dpi = 72 #
get_default_filetype ( ) [来源] #

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

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

print_pdf (文件名, * , bbox_inches_restore = None , metadata = None ) [source] #
matplotlib.backends.backend_pdf。GraphicsContextPdf (文件) [来源] #

基地:GraphicsContextBase

alpha_cmd ( alpha , force , effective_alphas ) [来源] #
capstyle_cmd ( style ) [来源] #
capstyles = {'butt': 0, 'projecting': 2, 'round': 1} #
clip_cmd ( cliprect , clippath ) [source] #

设置剪辑矩形。呼叫pop()push()

commands = ((('_cliprect', '_clippath'), <function GraphicsContextPdf.clip_cmd>), (('_alpha', '_forced_alpha', '_effective_alphas'), <function GraphicsContextPdf.alpha_cmd>), (('_capstyle' ,), <function GraphicsContextPdf.capstyle_cmd>), (('_fillcolor',), <function GraphicsContextPdf.fillcolor_cmd>), (('_joinstyle',), <function GraphicsContextPdf.joinstyle_cmd>), (('_linewidth',) , <function GraphicsContextPdf.linewidth_cmd>), (('_dashes',), <函数GraphicsContextPdf.dash_cmd>), (('_rgb',), <函数 GraphicsContextPdf.rgb_cmd>), (('_hatch', '_hatch_color'), <function GraphicsContextPdf.hatch_cmd>)) #
copy_properties (其他) [来源] #

将 other 的属性复制到 self 中。

dash_cmd ( dashes ) [来源] #
delta (其他) [来源] #

将 other 的属性复制到 self 并返回将 self 转换为 other 所需的 PDF 命令。

填充( * args ) [来源] #

谓词:路径是否需要填充?

根据 RendererPdf.draw_markers 的需要,可选参数可用于指定替代 _fillcolor。

fillcolor_cmd ( rgb ) [来源] #
finalize ( ) [来源] #

确保弹出每个推送的图形状态。

孵化命令(孵化,孵化颜色) [来源] #
joinstyle_cmd ( style ) [来源] #
joinstyles = {'bevel': 2, 'miter': 0, 'round': 1} #
linewidth_cmd (宽度) [来源] #
油漆( ) [来源] #

返回适当的 pdf 运算符以使路径被描边、填充或两者兼而有之。

pop ( ) [来源] #
( ) [来源] #
rgb_cmd ( rgb ) [来源] #
中风( ) [来源] #

谓词:路径是否需要描边(绘制轮廓)?这会测试禁用抚摸路径的各种条件,在这种情况下,它可能会被填充。

matplotlib.backends.backend_pdf。姓名姓名[来源] #

基地:object

PDF 名称对象。

静态 hexify ( match ) [source] #

[已弃用]

笔记

自 3.6 版起已弃用:

名字#
pdfRepr ( ) [来源] #
matplotlib.backends.backend_pdf。Op () [来源] #

基地:Enum

PDF 运算符(不是详尽的列表)。

begin_text = b'BT' [来源] #
剪辑= b'W' [来源] #
close_fill_stroke = b'b' [来源] #
close_stroke = b's' [来源] #
closepath = b'h' [来源] #
concat_matrix = b'cm' [来源] #
curveto = b'c' [来源] #
end_text = b'ET' [来源] #
endpath = b'n' [来源] #
填充= b'f' [来源] #
fill_stroke = b'B' [来源] #
grestore = b'Q' [来源] #
gsave = b'q' [来源] #
lineto = b'l' [来源] #
moveto = b'm' [来源] #
属性 op [来源] #
类方法 paint_path ( fill , stroke ) [ source] #

返回 PDF 运算符以绘制路径。

参数
填充布尔

用填充颜色填充路径。

行程布尔

用线条颜色勾勒出路径的轮廓。

pdfRepr ( ) [来源] #
矩形= b're' [来源] #
selectfont = b'Tf' [来源] #
setcolor_nonstroke = b'scn' [来源] #
setcolor_stroke = b'SCN' [来源] #
setcolorspace_nonstroke = b'cs' [来源] #
setcolorspace_stroke = b'CS' [来源] #
setdash = b'd' [来源] #
setgray_nonstroke = b'g' [来源] #
setgray_stroke = b'G' [来源] #
setgstate = b'gs' [来源] #
setlinecap = b'J' [来源] #
setlinejoin = b'j' [来源] #
setlinewidth = b'w' [来源] #
setrgb_nonstroke = b'rg' [来源] #
setrgb_stroke = b'RG' [来源] #
shading = b'sh' [来源] #
show = b'Tj' [来源] #
showkern = b'TJ' [来源] #
stroke = b'S' [来源] #
textmatrix = b'Tm' [来源] #
textpos = b'Td' [来源] #
use_xobject = b'Do' [来源] #
matplotlib.backends.backend_pdf。运算符( op ) [来源] #

基地:object

[已弃用]

笔记

自 3.6 版起已弃用:

操作#
pdfRepr ( ) [来源] #
matplotlib.backends.backend_pdf。PdfFile (文件名, metadata = None ) [source] #

基地:object

PDF 文件对象。

参数
文件名str 或 path-like 或 file-like

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

从字符串到字符串和日期的元数据字典

信息字典对象(参见 PDF 参考第 10.2.1 节“文档信息字典”),例如: .{'Creator': 'My software', 'Author': 'Me', 'Title': 'Awesome'}

标准键是“Title”、“Author”、“Subject”、“Keywords”、“Creator”、“Producer”、“CreationDate”、“ModDate”和“Trapped”。已经为“Creator”、“Producer”和“CreationDate”预定义了值。可以通过将它们设置为 来删除它们None

addGouraudTriangles (,颜色) [来源] #

添加 Gouraud 三角形阴影。

参数
np.ndarray

三角形顶点,形状 (n, 3, 2) 其中 n = 三角形数,3 = 顶点,2 = x, y。

颜色np.ndarray

顶点颜色、形状 (n, 3, 1) 或 (n, 3, 4) 与点一样,但最后一个维度是 (gray,) 或 (r, g, b, alpha)。

返回
名称,参考
alphaState ( alpha ) [来源] #

返回将 alpha 设置为给定值的 ExtGState 的名称。

beginStream ( id , len , extra = None , png = None ) [source] #
关闭( ) [来源] #

刷新所有缓冲区并释放所有资源。

createType1Descriptor ( t1font , fontfile ) [source] #
dviFontName ( dvifont ) [来源] #

给定一个 dvi 字体对象,返回一个适合 Op.selectfont 的名称。self.dviFontInfo如果尚未注册,这将注册字体信息。

embedTTF (文件名,字符) [来源] #

将命名文件中的 TTF 字体嵌入到文档中。

endStream ( ) [来源] #
finalize ( ) [来源] #

写出各种延迟对象和pdf结束事项。

字体名称( fontprop ) [来源] #

根据 fontprop 选择字体并返回适合 Op.selectfont 的名称。如果 fontprop 是一个字符串,它将被解释为字体的文件名。

孵化模式( hatch_style ) [来源] #
imageObject ( image ) [来源] #

返回表示给定图像的图像 XObject 的名称。

markerObject ( path , trans , fill , stroke , lw , joinstyle , capstyle ) [source] #

返回表示给定路径的标记 XObject 的名称。

newPage (宽度,高度) [来源] #
newTextnote ( text , positionRect = [-100, -100, 0, 0] ) [source] #
输出*数据[来源] #
outputStream ( ref , data , * , extra = None ) [source] #
pathCollectionObject ( gc , path , trans , padding , fill , stroked ) [source] #
静态 路径操作路径变换剪辑=简化=草图=[来源] #
recordXref ( id ) [来源] #
ReserveObject ( name = '' ) [来源] #

为间接对象保留一个 ID。

该名称用于调试,以防我们忘记使用 writeObject 打印出对象。

数据[来源] #
writeExtGSTates ( ) [来源] #
writeFonts ( ) [来源] #
writeGouraudTriangles ( ) [来源] #
writeHatches ( ) [来源] #
writeImages ( ) [来源] #
writeInfoDict ( ) [来源] #

写出信息字典,检查它的格式是否正确

writeMarkers ( ) [来源] #
writeObject (对象,内容) [来源] #
writePath ( path , transform , clip = False , sketch = None ) [source] #
writePathCollectionTemplates ( ) [来源] #
writeTrailer ( ) [来源] #

写出 PDF 预告片。

writeXref ( ) [来源] #

写出外部参照表。

matplotlib.backends.backend_pdf。PdfPages (文件名, keep_empty = True , metadata = None ) [来源] #

基地:object

多页 PDF 文件。

笔记

实际上PdfPages是一个薄包装器PdfFile,以避免在使用savefig和忘记格式参数时产生混淆。

例子

>>> import matplotlib.pyplot as plt
>>> # Initialize:
>>> with PdfPages('foo.pdf') as pdf:
...     # As many times as you like, create a figure fig and save it:
...     fig = plt.figure()
...     pdf.savefig(fig)
...     # When no figure is specified the current figure is saved
...     pdf.savefig()

创建一个新的 PdfPages 对象。

参数
文件名str 或 path-like 或 file-like

使用的绘图PdfPages.savefig将被写入此位置的文件。该文件会立即打开,并且任何具有相同名称的旧文件都会被覆盖。

keep_empty布尔值,可选

如果设置为 False,则在关闭时将自动删除空的 pdf 文件。

元数据字典,可选

信息字典对象(参见 PDF 参考第 10.2.1 节“文档信息字典”),例如: .{'Creator': 'My software', 'Author': 'Me', 'Title': 'Awesome'}

标准键是“Title”、“Author”、“Subject”、“Keywords”、“Creator”、“Producer”、“CreationDate”、“ModDate”和“Trapped”。已经为“Creator”、“Producer”和“CreationDate”预定义了值。可以通过将它们设置为 来删除它们None

attach_note ( text , positionRect = [-100, -100, 0, 0] ) [source] #

将新的文本注释添加到要保存的页面中。可选的 positionRect 指定新笔记在页面上的位置。默认情况下,它位于页面之外,以确保它在打印输出中不可见。

关闭( ) [来源] #

完成此对象,使基础文件成为完整的 PDF 文件。

get_pagecount ( ) [来源] #

返回多页 pdf 文件中的当前页数。

infodict ( ) [来源] #

返回一个可修改的信息字典对象(参见 PDF 参考第 10.2.1 节“文档信息字典”)。

keep_empty #
savefig ( figure = None , ** kwargs ) [来源] #

将此文件另存Figure为新页面。

任何其他关键字参数都传递给savefig.

参数
figureFigure或 int,默认值:活动图

保存到文件的图形或图形索引。

matplotlib.backends.backend_pdf。参考( id ) [来源] #

基地:object

PDF 参考对象。

使用 PdfFile.reserveObject() 创建引用。

pdfRepr ( ) [来源] #
(内容,文件) [来源] #
matplotlib.backends.backend_pdf。RendererPdf ( file , image_dpi , height , width ) [source] #

基地:RendererPDFPSBase

check_gc ( gc , fillcolor = None ) [来源] #
draw_gouraud_triangle ( gc , points , colors , trans ) [source] #

绘制一个 Gouraud 阴影三角形。

参数
GCGraphicsContextBase

图形上下文。

(3, 2) 类似数组

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

颜色(3, 4) 类似数组

三角形每个点的 RGBA 颜色。

转换matplotlib.transforms.Transform

应用于点的仿射变换。

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

绘制一系列 Gouraud 三角形。

参数
(N, 3, 2) 类似数组

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

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

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

转换matplotlib.transforms.Transform

应用于点的仿射变换。

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

绘制 RGBA 图像。

参数
GCGraphicsContextBase

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

x标量

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

y标量

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

im (N, M, 4) 类似于 np.uint8 的数组

一组 RGBA 像素。

转换matplotlib.transforms.Affine2DBase

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

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

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

基本(后备)实现多次调用draw_path. 后端可能希望覆盖此方法,以便仅绘制一次标记并多次重复使用它。

参数
GCGraphicsContextBase

图形上下文。

marker_transmatplotlib.transforms.Transform

应用于标记的仿射变换。

反式matplotlib.transforms.Transform

应用于路径的仿射变换。

draw_mathtext ( gc , x , y , s , prop , angle ) [来源] #
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] #

绘制路径集合。

每个路径首先由 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 ) [来源] #
draw_text ( gc , x , y , s , prop , angle , ismath = False , mtext = None ) [来源] #

绘制一个文本实例。

参数
GCGraphicsContextBase

图形上下文。

x浮动

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

y浮动

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

字符串_

文本字符串。

支柱matplotlib.font_manager.FontProperties

字体属性。

角度浮动

以度为单位的逆时针旋转角度。

多行文字matplotlib.text.Text

要渲染的原始文本对象。

笔记

后端实施者的注意事项:

当您尝试确定您的边界框是否正确(这使文本布局/对齐能够正常工作)时,它有助于更​​改 text.py 中的行:

if 0: bbox_artist(self, renderer)

到 if 1,然后实际的边界框将与您的文本一起绘制。

encode_string ( s , fonttype ) [来源] #
finalize ( ) [来源] #
get_image_magnification ( ) [来源] #

获取放大传递给的图像的因子draw_image。允许后端拥有与其他艺术家不同的分辨率的图像。

new_gc ( ) [来源] #

返回 a 的一个实例GraphicsContextBase

matplotlib.backends.backend_pdf。Stream ( id , len , file , extra = None , png = None ) [source] #

基地:object

PDF 流对象。

这没有 pdfRepr 方法。而是调用begin(),然后调用write()输出流的内容,最后调用end()。

参数
id int

流的对象 ID。

len参考或无

流长度的未使用引用对象;None 表示使用内存缓冲区,因此可以内联长度。

文件PdfFile

要将流写入的基础对象。

从名称到任何东西的额外字典,或无

要包含在流标头中的额外键值对。

png dict 或无

如果数据已经被 png 编码,则解码参数。

压缩对象#
end ( ) [来源] #

完成流。

额外的#
文件#
编号#
#
pdf文件#
位置#
数据[来源] #

在流上写入一些数据。

matplotlib.backends.backend_pdf。逐字记录( x ) [来源] #

基地:object

存储逐字 PDF 命令内容以供以后包含在流中。

pdfRepr ( ) [来源] #
matplotlib.backends.backend_pdf。填充(字符串, linelen = 75 ) [来源] #

[已弃用]

笔记

3.6 版后已弃用:改用 _fill 的供应商副本。

matplotlib.backends.backend_pdf。pdfRepr ( obj ) [来源] #

将 Python 对象映射到 PDF 语法。