matplotlib.backends.backend_agg
#
一个 Anti-Grain Geometry (AGG) 后端。
已实现的功能:
capstyles 和 join styles
dashes
linewidth
线条、矩形、椭圆
裁剪到矩形
输出为 RGBA 和 Pillow 支持的图像格式
alpha 混合
DPI 缩放正确 - 所有内容都正确缩放(破折号、线宽等)
绘制多边形
freetype2 w/ ft2font
仍待完成:
整合屏幕 dpi 与 ppi 及文本
- matplotlib.backends.backend_agg.FigureCanvas[源代码]#
FigureCanvasAgg
的别名
- class matplotlib.backends.backend_agg.FigureCanvasAgg(figure=None)[源代码][源代码]#
-
- buffer_rgba()[源代码][源代码]#
将图像作为
memoryview
获取到渲染器的缓冲区。draw
必须在此函数工作之前至少调用一次,并且为了更新图形的任何后续更改,需要更新渲染器。
- print_jpeg(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码]#
将图像写入JPEG文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- pil_kwargsdict, 可选
在保存图形时传递给
PIL.Image.Image.save
的额外关键字参数。
- print_jpg(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码][源代码]#
将图像写入JPEG文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- pil_kwargsdict, 可选
在保存图形时传递给
PIL.Image.Image.save
的额外关键字参数。
- print_png(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码][源代码]#
将图形写入 PNG 文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- 元数据dict, 可选
PNG 文件中的元数据作为字节或 latin-1 可编码字符串的键值对。根据 PNG 规范,键必须短于 79 个字符。
PNG 规范 定义了一些可能适当使用的通用关键词:
标题: 图片的简短(一行)标题或说明。
作者: 图像的创建者姓名。
描述: 图片描述(可能较长)。
版权: 版权声明。
创建时间:原始图像的创建时间(通常为RFC 1123格式)。
软件:用于创建图像的软件。
免责声明:法律免责声明。
警告:内容性质的警告。
源: 用于创建图像的设备。
注释:杂项注释;从其他图像格式转换。
其他关键词可能为其他目的而发明。
如果未提供 'Software',将使用 Matplotlib 的自动生成值。可以通过将其设置为 None 来移除它。
更多详情请参见 PNG 规范。
- pil_kwargsdict, 可选
传递给
PIL.Image.Image.save
的关键字参数。如果存在 'pnginfo' 键,它将完全覆盖 元数据,包括默认的 'Software' 键。
- print_tif(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码][源代码]#
将图像写入 TIFF 文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- pil_kwargsdict, 可选
在保存图形时传递给
PIL.Image.Image.save
的额外关键字参数。
- print_tiff(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码]#
将图像写入 TIFF 文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- pil_kwargsdict, 可选
在保存图形时传递给
PIL.Image.Image.save
的额外关键字参数。
- print_webp(filename_or_obj, *, metadata=None, pil_kwargs=None)[源代码][源代码]#
将图像写入 WebP 文件。
- 参数:
- filename_or_objstr 或 path-like 或 file-like
要写入的文件。
- pil_kwargsdict, 可选
在保存图形时传递给
PIL.Image.Image.save
的额外关键字参数。
- class matplotlib.backends.backend_agg.RendererAgg(width, height, dpi)[源代码][源代码]#
基类:
RendererBase
渲染器使用一个图形上下文实例处理所有绘图原语,该实例控制颜色/样式
- draw_mathtext(gc, x, y, s, prop, angle)[源代码][源代码]#
使用
matplotlib.mathtext
绘制数学文本。
- draw_tex(gc, x, y, s, prop, angle, *, mtext=None)[源代码][源代码]#
绘制一个 TeX 实例。
- 参数:
- gc
GraphicsContextBase
图形上下文。
- x浮动
文本在显示坐标中的x位置。
- y浮动
文本基线在显示坐标中的y位置。
- sstr
TeX 文本字符串。
- prop
FontProperties
字体属性。
- 角度浮动
逆时针方向的旋转角度(以度为单位)。
- mtext文本
要渲染的原始文本对象。
- gc
- draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[源代码][源代码]#
绘制一个文本实例。
- 参数:
- gc
GraphicsContextBase
图形上下文。
- x浮动
文本在显示坐标中的x位置。
- y浮动
文本基线在显示坐标中的y位置。
- sstr
文本字符串。
- prop
FontProperties
字体属性。
- 角度浮动
逆时针方向的旋转角度(以度为单位)。
- ismath布尔值或“TeX”
如果为真,使用 mathtext 解析器。
- mtext文本
要渲染的原始文本对象。
- gc
注释
后端实现者须知:
RendererBase.draw_text
也支持将 "TeX" 传递给 ismath 参数以使用 TeX 渲染,但这对于实际的渲染后端不是必需的,实际上许多内置后端并不支持这一点。相反,TeX 渲染由draw_tex
提供。
- get_text_width_height_descent(s, prop, ismath)[源代码][源代码]#
获取字符串 s 在显示坐标系中的宽度、高度和下降量(从底部到基线的偏移量),使用
FontProperties
prop。在 s 的开头和结尾处的空白字符包含在报告的宽度中。
- option_image_nocomposite()[源代码][源代码]#
返回是否应跳过 Matplotlib 的图像合成。
光栅后端通常应返回 False(让 C 级光栅化器处理图像合成);矢量后端通常应返回
not rcParams["image.composite_image"]
。
- points_to_pixels(points)[源代码][源代码]#
将点转换为显示单位。
你需要重写这个函数(除非你的后端没有dpi,例如,postscript或svg)。一些图像系统假设每英寸的像素值为:
points to pixels = points * pixels_per_inch/72 * dpi/72
- 参数:
- 点浮点数或类似数组
- 返回:
- 点转换为像素
- restore_region(region, bbox=None, xy=None)[源代码][源代码]#
恢复保存的区域。如果给出了 bbox(BboxBase 的实例,或其范围),则只会恢复由 bbox 指定的区域。*xy*(一对浮点数)可选地指定新位置(原始区域的左下角,而不是 bbox 的左下角),在该位置将恢复区域。
>>> region = renderer.copy_from_bbox() >>> x1, y1, x2, y2 = region.get_extents() >>> renderer.restore_region(region, bbox=(x1+dx, y1, x2, y2), ... xy=(x1-dx, y1))
- stop_filter(post_processing)[源代码][源代码]#
将当前画布保存为图像并应用后期处理。
The post_processing 函数:
def post_processing(image, dpi): # ny, nx, depth = image.shape # image (numpy array) has RGBA channels and has a depth of 4. ... # create a new_image (numpy array of 4 channels, size can be # different). The resulting image may have offsets from # lower-left corner of the original image return new_image, offset_x, offset_y
保存的渲染器被恢复,并且来自后处理的返回图像(使用 draw_image)被绘制在其上。