matplotlib.backend_bases
¶
抽象基类定义渲染器和图形上下文必须实现的原语,以用作Matplotlib后端。
RendererBase
- 用于处理绘图/呈现操作的抽象基类。
FigureCanvasBase
- 将
Figure
从后端特定的细节,如用户界面绘图区域。 GraphicsContextBase
- 提供颜色、线条样式等的抽象基类。
Event
- 所有Matplotlib事件处理的基类。派生类,例如
KeyEvent
和MouseEvent
存储元数据,如按下的键和按钮、x和y的像素位置和Axes
协调。 ShowBase
- 的基类
Show
类;然后将“show”可调用设置为Show.__call__
. ToolContainerBase
- 每个交互后端的工具栏类的基类。
-
class
matplotlib.backend_bases.
CloseEvent
(name, canvas, guiEvent=None)[源代码]¶ 基类:
matplotlib.backend_bases.Event
由正在关闭的图形触发的事件。
-
class
matplotlib.backend_bases.
DrawEvent
(name, canvas, renderer)[源代码]¶ 基类:
matplotlib.backend_bases.Event
由画布上的绘图操作触发的事件
在大多数后端中,订阅此回调的回调将在渲染完成但屏幕更新之前激发。绘制到画布渲染器的任何其他艺术家都将反映出来,而无需显式调用
blit
.警告
调用
canvas.draw
和canvas.blit
在这些回调中,所有后端可能都不安全,并可能导致无限递归。除了
Event
属性,定义以下事件属性:属性: - 渲染器 :
RendererBase
RendererBase
绘制事件的渲染器。
- 渲染器 :
-
class
matplotlib.backend_bases.
Event
(name, canvas, guiEvent=None)[源代码]¶ 基类:
object
Matplotlib事件。附加中定义的其他属性
FigureCanvasBase.mpl_connect()
. 定义并显示以下属性的默认值属性: - nameSTR
事件名称。
- 帆布 :
FigureCanvasBase
FigureCanvasBase
生成事件的后端特定画布实例。
- guiEvent
触发Matplotlib事件的GUI事件。
-
class
matplotlib.backend_bases.
FigureCanvasBase
(figure)[源代码]¶ 基类:
object
图形渲染到的画布。
属性: - 图形 :
matplotlib.figure.Figure
matplotlib.figure.Figure
高级人物实例。
鼠标按钮按下事件的回调处理。
后端派生类应该在任何按下鼠标键时调用此函数。( x , y )是画布坐标((0,0)在左下角)。按钮和键的定义如
MouseEvent
.此方法将使用
MouseEvent
实例。
鼠标按钮释放事件的回调处理。
后端派生类应该在任何鼠标按钮释放时调用此函数。
此方法将使用
MouseEvent
实例。参数: - x浮动
画布坐标为0=左。
- y浮动
画布坐标为0=底部。
- guiEvent
生成Matplotlib事件的本机UI事件。
-
close_event
(guiEvent=None)[源代码]¶ 通过A
CloseEvent
连接到所有功能close_event
.
-
draw_cursor
(event)[源代码]¶ [Deprecated] 如果in axes不是none,则在event.axes中绘制一个光标。如果可能,使用本地图形用户界面绘图以提高效率
笔记
3.2 版后已移除.
-
draw_idle
(*args, **kwargs)[源代码]¶ 一旦控件返回到GUI事件循环,请求一个小部件重画。
即使多次调用
draw_idle
发生在控件返回到GUI事件循环之前,图形将只呈现一次。笔记
后端可以选择覆盖该方法并实现自己的策略来防止多重渲染。
-
enter_notify_event
(guiEvent=None, xy=None)[源代码]¶ 鼠标光标进入画布的回调处理。
后端派生类在进入画布时应调用此函数。
参数: - guiEvent
生成Matplotlib事件的本机UI事件。
- xy(浮标,浮标)
输入画布时指针的坐标位置。
-
events
= ['resize_event', 'draw_event', 'key_press_event', 'key_release_event', 'button_press_event', 'button_release_event', 'scroll_event', 'motion_notify_event', 'pick_event', 'figure_enter_event', 'figure_leave_event', 'axes_enter_event', 'axes_leave_event', 'close_event']¶
-
filetypes
= {'eps': 'Encapsulated Postscript', 'jpeg': 'Joint Photographic Experts Group', 'jpg': 'Joint Photographic Experts Group', 'pdf': 'Portable Document Format', 'pgf': 'PGF code for LaTeX', 'png': 'Portable Network Graphics', 'ps': 'Postscript', 'raw': 'Raw RGBA bitmap', 'rgba': 'Raw RGBA bitmap', 'svg': 'Scalable Vector Graphics', 'svgz': 'Scalable Vector Graphics', 'tif': 'Tagged Image File Format', 'tiff': 'Tagged Image File Format'}¶
-
fixed_dpi
= None¶
-
classmethod
get_default_filetype
()[源代码]¶ 返回中指定的默认savefig文件格式
rcParams["savefig.format"]
(default:'png'
) .返回的字符串不包含句点。此方法在仅支持单一文件类型的后端中被重写。
-
classmethod
get_supported_filetypes_grouped
()[源代码]¶ 返回此后端支持的savefig文件格式的dict,其中键是文件类型名,例如“联合摄影专家组”,值是用于该文件类型的文件扩展名列表,例如 [“JPG”,“JPEG”] .
-
inaxes
(xy)[源代码]¶ 返回最上面可见的
Axes
包含要点 xy .参数: - xy(浮标,浮标)
(x,y)画布左/底部的像素位置。
返回: Axes
或无包含该点的最上面的可见轴,如果没有轴,则无。
-
leave_notify_event
(guiEvent=None)[源代码]¶ 鼠标光标离开画布的回调处理。
后端派生类应该在离开画布时调用此函数。
参数: - guiEvent
生成Matplotlib事件的本机UI事件。
-
motion_notify_event
(x, y, guiEvent=None)[源代码]¶ 鼠标移动事件的回调处理。
后端派生类应该在任何运动通知事件上调用此函数。
此方法将使用
MouseEvent
实例。参数: - x浮动
画布坐标为0=左。
- y浮动
画布坐标为0=底部。
- guiEvent
生成Matplotlib事件的本机UI事件。
-
mpl_connect
(s, func)[源代码]¶ 绑定函数 func 到事件 s .
参数: - sSTR
下列事件之一ID:
- 'button_press_event'
- 'button_release_event'
- 'draw_event'
- 'key_press_event'
- 'key_release_event'
- 'motion_notify_event'
- 'pick_event'
- 'resize_event'
- 'scroll_event'
- 'figure_enter_event',
- 'figure_leave_event',
- 'axes_enter_event',
- 'axes_leave_event'
- 'close_event'.
- func可赎回的
要执行的回调函数,该函数必须具有以下签名:
def func(event: Event) -> Any
对于位置事件(按钮和按键按下/释放),如果鼠标位于轴上,则
inaxes
事件的属性将设置为Axes
事件发生结束,另外,变量xdata
和ydata
属性将被设置为鼠标在数据坐标中的位置。看到了吗KeyEvent
和MouseEvent
更多信息。
返回: - CID
可用于的连接id
FigureCanvasBase.mpl_disconnect
.
实例
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = canvas.mpl_connect('button_press_event', on_press)
-
mpl_disconnect
(cid)[源代码]¶ 断开id为的回调 cid .
实例
cid = canvas.mpl_connect('button_press_event', on_press) # ... later canvas.mpl_disconnect(cid)
-
new_timer
(interval=None, callbacks=None)[源代码]¶ 创建新的后端特定子类
Timer
.这对于通过后端的本机事件循环获取周期性事件非常有用。只在有gui的后端实现。
参数: - interval利息
计时器间隔(毫秒)。
- callbacks表 [tuple[可调用,tuple,dict] ]
(func,args,kwargs)的序列,其中
func(*args, **kwargs)
将由计时器执行 间隔 .返回的回调
False
或0
将从计时器中删除。
实例
>>> timer = fig.canvas.new_timer(callbacks=[(f1, (1,), {'a': 3})])
-
print_figure
(filename, dpi=None, facecolor=None, edgecolor=None, orientation='portrait', format=None, *, bbox_inches=None, pad_inches=None, bbox_extra_artists=None, backend=None, **kwargs)[源代码]¶ 将图形渲染为硬拷贝。设置图形贴片面和边的颜色。这很有用,因为有些gui有一个灰色的人脸颜色背景,您可能希望在硬拷贝上覆盖它。
参数: - filenamestr或path like或file like
保存地物的文件。
- dpi : float, default:
rcParams["savefig.dpi"]
(default:'figure'
)浮动,默认值: 每英寸的点数以保存图形。
- 脸色 : color or 'auto', default:
rcParams["savefig.facecolor"]
(default:'auto'
)颜色或“自动”,默认值: 人物的脸色。如果为“自动”,则使用当前地物颜色。
- 变色染料 : color or 'auto', default:
rcParams["savefig.edgecolor"]
(default:'auto'
)颜色或“自动”,默认值: 人物的边缘颜色。如果为“自动”,则使用当前地物边颜色。
- orientation{'landscape','portrait'},默认值:'纵向'
当前仅适用于PostScript打印。
- format可选的STR
强制使用特定的文件格式。如果未给定,则从 文件名 如果扩展失败
rcParams["savefig.format"]
(default:'png'
) .- bbox_inches : 'tight' or
Bbox
, default:rcParams["savefig.bbox"]
(default:None
)“紧”或 以英寸为单位的边界框:仅保存图形的给定部分。如果“紧”,试着找出这个数字的紧框。
- pad_inches : float, default:
rcParams["savefig.pad_inches"]
(default:0.1
)浮动,默认值: 当 bbox_inches “很紧”。
- bbox_extra_artists 名单
Artist
可选名单 当计算Tight BBox时将考虑的额外艺术家列表。
- backend可选的STR
使用非默认后端渲染文件,例如,使用“cairo”后端而不是默认的“agg”渲染png文件,或使用“pgf”后端而不是默认的“pdf”渲染pdf文件。请注意,默认后端通常是足够的。看到了吗 内置后端 获取每个文件格式的有效后端列表。自定义后端可以引用为“模块://。。。".
-
release_mouse
(ax)[源代码]¶ Release the mouse grab held by the
Axes
ax.通常由小部件调用。即使是这样,也可以这样称呼 ax 当前没有鼠标抓取。
-
required_interactive_framework
= None¶
-
resize_event
()[源代码]¶ 通过A
ResizeEvent
连接到所有功能resize_event
.
-
scroll_event
(x, y, step, guiEvent=None)[源代码]¶ 滚动事件的回调处理。
后端派生类应在任何滚轮事件上调用此函数。( x , y )是画布坐标((0,0)在左下方)。按钮和键的定义见
MouseEvent
.此方法将使用
MouseEvent
实例。
-
start_event_loop
(timeout=0)[源代码]¶ 启动阻塞事件循环。
这种事件循环由交互函数使用,例如
ginput
和waitforbuttonpress
,以等待事件。事件循环将一直阻塞,直到回调函数触发
stop_event_loop
或 超时 达到。如果 超时 为0或负数,从不超时。
只有交互后端需要重新实现此方法,它依赖于
flush_events
正确执行。交互式后端应该以更本地的方式实现这一点。
-
stop_event_loop
()[源代码]¶ 停止当前阻塞事件循环。
交互式后端需要重新实现以匹配
start_event_loop
-
supports_blit
= False¶
- 图形 :
-
class
matplotlib.backend_bases.
FigureManagerBase
(canvas, num)[源代码]¶ 基类:
object
图形容器和控制器的独立于后端的抽象。
pyplot使用图形管理器以独立于后端的方式与窗口交互。它是real(GUI)框架的适配器,表示屏幕上的可视图形。
GUI后端从这个类定义来转换诸如 show 或 调整大小 到GUI特定的代码。非GUI后端不支持这些操作,只能使用基类。
可以访问以下基本操作:
窗口操作
按键和鼠标按键操作
图形管理器通过连接
key_press_handler
到matplotlib事件系统。这样可以确保在后端使用相同的快捷方式和鼠标操作。其他业务
子类将具有访问附加功能的附加属性和函数。这当然是特定于后端的。例如,大多数GUI后端都有
window
和toolbar
属性,这些属性允许访问相应框架的本机GUI小部件。属性: - 帆布 :
FigureCanvasBase
FigureCanvasBase
后端特定的画布实例。
- numINT/STR
数字编号。
- key_press_handler_id利息
使用工具管理器时的默认键处理程序cid。要禁用默认按键处理,请使用:
figure.canvas.mpl_disconnect( figure.canvas.manager.key_press_handler_id)
- button_press_handler_id利息
使用工具管理器时的默认鼠标按钮处理程序cid。要禁用默认按钮按下处理,请使用:
figure.canvas.mpl_disconnect( figure.canvas.manager.button_press_handler_id)
额外鼠标按钮的默认Matplotlib按钮操作。
-
show
()[源代码]¶ 对于GUI后端,显示figure窗口并重新绘制。对于非GUI后端,引发异常,除非运行headless(即在具有未设置显示的Linux上);此异常在中转换为警告
Figure.show
.
-
property
statusbar
¶
- 帆布 :
-
class
matplotlib.backend_bases.
GraphicsContextBase
[源代码]¶ 基类:
object
提供颜色、线条样式等的抽象基类。
-
get_dashes
()[源代码]¶ 将短划线样式作为(偏移,短划线列表)对返回。
虚线列表是一个偶数长度的列表,它以点表示墨迹打开和关闭。见第107页至附言 blue book 更多信息。
默认值为(无,无)。
-
set_alpha
(alpha)[源代码]¶ 设置用于混合的alpha值-不支持所有后端。
如果
alpha=None
(默认),前景和填充颜色的alpha分量将用于设置各自的透明度(如果适用);否则,alpha
将覆盖它们。
-
set_clip_path
(path)[源代码]¶ 设置路径和剪辑。
参数: - path :
TransformedPath
或无转换路径或无
- path :
-
set_dashes
(dash_offset, dash_list)[源代码]¶ 设置gc的破折号样式。
参数: - dash_offset浮动或无
偏移量(通常为0)。
- dash_list阵列式或无阵列
开关序列作为点。
笔记
(None, None)
指定实线。见第107页至附言 blue book 更多信息。
-
set_foreground
(fg, isRGBA=False)[源代码]¶ 设置前景色。
参数: - fg颜色
- isRGBA布尔
如果 fg 已知是
(r, g, b, a)
元组, 伊斯格巴 可以设置为True以提高性能。
-
-
class
matplotlib.backend_bases.
KeyEvent
(name, canvas, key, x=0, y=0, guiEvent=None)[源代码]¶ 基类:
matplotlib.backend_bases.LocationEvent
按键事件(按键、按键释放)。
附加在中定义的其他属性
FigureCanvasBase.mpl_connect()
.除了
Event
和LocationEvent
属性,定义以下属性:笔记
修改键将在按下的键之前加上前缀,并按“ctrl”、“alt”、“super”的顺序排列。此规则的例外情况是,当按下的键本身是修改键时,“ctrl+alt”和“alt+control”都可以是有效的键值。
实例
def on_key(event): print('you pressed', event.key, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('key_press_event', on_key)
属性: - key无或STR
按键。可以是 None ,单个区分大小写的ASCII字符(“g”、“g”、“”等)、特殊键(“control”、“shift”、“f1”、“up”等)或以上组合(如“ctrl+alt+g”、“ctrl+alt+g”)。
( x , y )在图中坐标((0,0)=左下角)。
-
class
matplotlib.backend_bases.
LocationEvent
(name, canvas, x, y, guiEvent=None)[源代码]¶ 基类:
matplotlib.backend_bases.Event
具有屏幕位置的事件。
以下附加属性是用它们的默认值定义和显示的。
除了
Event
属性,定义以下事件属性:属性: ( x , y )在图中坐标((0,0)=左下角)。
-
lastevent
= None¶
-
-
class
matplotlib.backend_bases.
MouseButton
(value)[源代码]¶ 基类:
enum.IntEnum
枚举。
-
BACK
= 8¶
-
FORWARD
= 9¶
-
LEFT
= 1¶
-
MIDDLE
= 2¶
-
RIGHT
= 3¶
-
-
class
matplotlib.backend_bases.
MouseEvent
(name, canvas, x, y, button=None, key=None, step=0, dblclick=False, guiEvent=None)[源代码]¶ 基类:
matplotlib.backend_bases.LocationEvent
- 一个鼠标事件(“按钮按下事件”,
- '按钮释放事件'、'滚动事件'、'运动通知事件')。
除了
Event
和LocationEvent
属性,定义以下属性:实例
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('button_press_event', on_press)
属性: - button无或
按钮按下了向上和向下用于滚动事件。请注意,在nbagg后端,中键和右键单击都会返回右键,因为在某些浏览器中,右键单击会打开上下文菜单。“左键”和“右键”实际上指的是左键和右键。
- key无或STR
鼠标事件触发时按下的键,例如“shift”。见
KeyEvent
.警告
此密钥当前从画布中发生的最后一个“keyu pressu event”或“keyu releaseu event”获取。因此,如果键盘状态的最后一次更改发生在画布没有焦点时,则此属性将是错误的。
- step浮动
滚动步数(正表示“向上”,负数表示“向下”)。这只适用于“滚动事件”,否则默认为0。
- dblclick布尔
事件是否为双击。这只适用于“按钮按下事件”,否则为假。尤其是,它不用于“按钮释放事件”。
( x , y )在图中坐标((0,0)=左下角)按钮按下无,1,2,3,“向上”,“向下”
基类:
object
导航游标的基类,版本2。
后端必须实现一个画布来处理“buttonu pressu event”和“buttonu releaseu event”的连接。看到了吗
FigureCanvasBase.mpl_connect()
更多信息。他们还必须定义
save_figure()
- 保存当前图形
set_cursor()
- 如果要更改指针图标
draw_rubberband()
(可选)- 绘制缩放到矩形矩形“rubberband”
set_message()
(可选)- 显示消息
set_history_buttons()
(可选)- 您可以更改历史后退/前进按钮以指示禁用/启用状态。
超驰
__init__
设置工具栏——不要忘记调用基类init。一般来说,__init__
需要设置连接到的工具栏按钮home
,back
,forward
,pan
,zoom
和save_figure
方法和使用数据路径的“images”子目录中的标准图标。就这样,剩下的我们就做!
向上移动视图lim堆栈。
为了方便作为GUI回调直接连接(通常会传递额外的参数),该方法接受任意参数,但不使用它们。
用于在平移/缩放模式下拖动的回调。
用于在缩放模式下拖动的回调。
[Deprecated] 重新绘制画布,更新定位器。
笔记
3.3 版后已移除.
绘制一个矩形橡皮圈并指示缩放限制。
注意,不能保证
x0 <= x1
和y0 <= y1
.
在视图LIM堆栈中向前移动。
为了方便作为GUI回调直接连接(通常会传递额外的参数),该方法接受任意参数,但不使用它们。
恢复原始视图。
为了方便作为GUI回调直接连接(通常会传递额外的参数),该方法接受任意参数,但不使用它们。
切换“平移/缩放”工具。
用左键平移,用右键缩放。
[Deprecated] 每当按下鼠标按钮时调用。
笔记
3.3 版后已移除.
在平移/缩放模式下按下鼠标按钮的回调。
鼠标按钮的回调按缩放到矩形模式。
将当前视图限制和位置推到堆栈上。
[Deprecated] 鼠标按钮释放回调。
笔记
3.3 版后已移除.
在平移/缩放模式下用于释放鼠标按钮的回调。
用于在缩放到矩形模式下释放鼠标按钮的回调。
拆下橡胶垫和。
保存当前图形。
将当前光标设置为
Cursors
枚举值。如果后端系统要求,该方法应在设置光标后在后端事件循环中触发更新,因为该方法可能会被调用,例如在不更新GUI的长时间运行任务之前。
启用或禁用后退/前进按钮。
在工具栏或状态栏中显示消息。
重置轴堆栈。
切换缩放到矩形模式。
-
class
matplotlib.backend_bases.
PickEvent
(name, canvas, mouseevent, artist, guiEvent=None, **kwargs)[源代码]¶ 基类:
matplotlib.backend_bases.Event
pick事件,当用户在画布上选择一个足够靠近艺术家的位置时触发。
所有:
Event
属性加实例
绑定函数
on_pick()
要拾取事件,将打印拾取的数据点的坐标:ax.plot(np.rand(100), 'o', picker=5) # 5 points tolerance def on_pick(event): line = event.artist xdata, ydata = line.get_data() ind = event.ind print('on pick line:', np.array([xdata[ind], ydata[ind]]).T) cid = fig.canvas.mpl_connect('pick_event', on_pick)
属性: - 鼠标移动 :
MouseEvent
MouseEvent
生成拾取的鼠标事件。
- 艺术家 :
matplotlib.artist.Artist
matplotlib.artist.Artist
被选中的艺术家。
- other
根据拾取对象的类型,可能存在其他属性;例如
Line2D
pick可以定义不同于PatchCollection
选择。
- 鼠标移动 :
-
class
matplotlib.backend_bases.
RendererBase
[源代码]¶ 基类:
object
用于处理绘图/呈现操作的抽象基类。
为了实现完整的功能,必须在后端实现以下方法(尽管只是实现
draw_path()
仅此一项就可以提供高性能的后端系统):以下方法 应该 出于优化原因在后端执行:
-
draw_gouraud_triangle
(gc, points, colors, transform)[源代码]¶ 画一个古鲁德阴影三角形。
参数: - gc :
GraphicsContextBase
GraphicsContextBase
图形上下文。
- points类数组,形状=(3,2)
三角形的(x,y)点数组。
- colors类数组,形状=(3,4)
三角形每个点的rgba颜色。
- 转型 :
matplotlib.transforms.Transform
matplotlib.transforms.Transform
应用于点的仿射变换。
- gc :
-
draw_gouraud_triangles
(gc, triangles_array, colors_array, transform)[源代码]¶ 画一系列的古劳德三角形。
参数: - points类数组,形状=(N,3,2)
数组 N (x,y)三角形的点。
- colors类数组,形状=(N,3,4)
数组 N 每个三角形点的rgba颜色。
- 转型 :
matplotlib.transforms.Transform
matplotlib.transforms.Transform
应用于点的仿射变换。
-
draw_image
(gc, x, y, im, transform=None)[源代码]¶ 绘制RGBA图像。
参数: - gc :
GraphicsContextBase
GraphicsContextBase
包含剪辑信息的图形上下文。
- x标量
距离画布左侧的物理单位(即点或像素)。
- y标量
以物理单位(即点或像素)表示的与画布底部的距离。
- im类数组,shape=(N,M,4),数据类型=np.uint8公司
一组rgba像素。
- 转型 :
matplotlib.transforms.Affine2DBase
matplotlib.transforms.Affine2DBase
如果并且仅当具体的后端被写为
option_scale_image()
收益率True
,仿射变换(即Affine2DBase
) may 被传授给draw_image()
. 变换的平移向量以物理单位(即点或像素)给出。请注意,转换不会重写 x 和 y ,必须应用 之前 将结果转换为 x 和 y (这可以通过添加 x 和 y 到由定义的翻译矢量 转型 )
- gc :
-
draw_markers
(gc, marker_path, marker_trans, path, trans, rgbFace=None)[源代码]¶ 在路径中的每个顶点绘制一个标记。
这包括所有顶点,包括曲线上的控制点。为了避免这种行为,应该在调用此函数之前删除这些顶点。
这提供了一个draw_标记的回退实现,该标记对
draw_path()
. 有些后端可能希望重写此方法,以便只绘制一次标记并多次重复使用它。参数: - gc :
GraphicsContextBase
GraphicsContextBase
图形上下文。
- marker_trans :
matplotlib.transforms.Transform
matplotlib.transforms.Transform
应用于标记的仿射变换。
- 反式 :
matplotlib.transforms.Transform
matplotlib.transforms.Transform
应用于路径的仿射变换。
- gc :
-
draw_path_collection
(gc, master_transform, paths, all_transforms, offsets, offsetTrans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls, offset_position)[源代码]¶ 从列表中选择图形特性绘制路径集合 脸色 , 绿色染料 , 线宽度 , 直线运动 和 抗混叠剂 . 偏移量 是要应用于每个路径的偏移列表。中的偏移量 偏移量 首先被 抵销交易 在应用之前。
offset_position 可以是“屏幕”或“数据”,具体取决于偏移所处的空间;“数据”已弃用。
这提供了
draw_path_collection()
打了多次电话给draw_path()
. 有些后端可能希望重写此项,以便只渲染一次每个路径数据集,然后使用不同的偏移量、颜色、样式等多次引用该路径。生成器方法_iter_collection_raw_paths()
和_iter_collection()
旨在帮助(和标准化)跨后端的实现。强烈建议使用这些生成器,以便更改draw_path_collection()
可以在全球范围内生产。
-
draw_quad_mesh
(gc, master_transform, meshWidth, meshHeight, coordinates, offsets, offsetTrans, facecolors, antialiased, edgecolors)[源代码]¶ 的回退实现
draw_quad_mesh()
生成路径然后调用draw_path_collection()
.
-
draw_text
(gc, x, y, s, prop, angle, ismath=False, mtext=None)[源代码]¶ 绘制文本实例。
参数: - gc :
GraphicsContextBase
GraphicsContextBase
图形上下文。
- x浮动
文本在显示坐标中的x位置。
- y浮动
文本基线在显示坐标中的y位置。
- sSTR
文本字符串。
- prop :
matplotlib.font_manager.FontProperties
matplotlib.font_manager.FontProperties
字体属性。
- angle浮动
以度为单位的逆时针旋转角度。
- 多行文本 :
matplotlib.text.Text
matplotlib.text.Text
要呈现的原始文本对象。
笔记
后端实现者注意:
当您试图确定边界框是否正确时(这是使文本布局/对齐方式正常工作的原因),它有助于更改文本中的线条。py::
if 0: bbox_artist(self, renderer)
如果为1,则实际边界框将与文本一起打印。
- gc :
-
get_image_magnification
()[源代码]¶ 获取放大传递给的图像的因子
draw_image()
. 允许后端对其他艺术家使用不同分辨率的图像。
-
get_texmanager
()[源代码]¶ 返回
TexManager
实例。
-
get_text_width_height_descent
(s, prop, ismath)[源代码]¶ Get the width, height, and descent (offset from the bottom to the baseline), in display coords, of the string s with
FontProperties
prop.
-
new_gc
()[源代码]¶ 返回的实例
GraphicsContextBase
.
-
option_image_nocomposite
()[源代码]¶ 返回是否应跳过Matplotlib合成图像。
栅格后端通常应返回False(让C级栅格化器负责图像合成);矢量后端通常应返回
not rcParams["image.composite_image"]
.
-
option_scale_image
()[源代码]¶ 返回是否在
draw_image()
支持(对于大多数向量后端为真)。
-
points_to_pixels
(points)[源代码]¶ 将点转换为显示单位。
您需要重写这个函数(除非您的后端没有dpi,例如postscript或svg)。一些成像系统假定每英寸像素的值为:
points to pixels = points * pixels_per_inch/72 * dpi/72
参数: - points浮点数或类似数组的
浮点数或浮点数数组
返回: - 转换为像素的点
-
start_rasterizing
()[源代码]¶ 切换到栅格渲染器。
被使用
MixedModeRenderer
.
-
stop_rasterizing
()[源代码]¶ 切换回矢量渲染器并将栅格渲染器的内容绘制为矢量渲染器上的图像。
被使用
MixedModeRenderer
.
-
-
class
matplotlib.backend_bases.
ResizeEvent
(name, canvas)[源代码]¶ 基类:
matplotlib.backend_bases.Event
由画布大小调整触发的事件
除了
Event
属性,定义以下事件属性:属性: - width利息
画布的宽度(以像素为单位)。
- height利息
画布的高度(以像素为单位)。
-
class
matplotlib.backend_bases.
ShowBase
[源代码]¶ 基类:
matplotlib.backend_bases._Backend
简单基类来生成
show()
后端函数。子类必须重写
mainloop()
方法。
-
class
matplotlib.backend_bases.
StatusbarBase
(toolmanager)[源代码]¶ 基类:
object
[Deprecated] statusbar的基类。
笔记
3.3 版后已移除.
-
class
matplotlib.backend_bases.
TimerBase
(interval=None, callbacks=None)[源代码]¶ 基类:
object
提供计时器事件的基类,对动画很有用。后端需要实现一些特定的方法,以便使用它们自己的计时机制,以便将计时器事件集成到它们的事件循环中。
子类必须重写以下方法:
_timer_start
:用于启动计时器的后端特定代码。_timer_stop
:用于停止计时器的后端特定代码。
子类还可以重写以下方法:
_timer_set_single_shot
:用于将计时器设置为单次操作模式的代码(如果计时器对象支持)。如果不是的话Timer
class itself will store the flag and the ``_ 应重写on-timer``方法以支持此类行为。_timer_set_interval
:设置计时器时间间隔的代码,如果存在对计时器对象执行此操作的方法。_on_timer
:任何计时器对象都应调用的内部函数,它将处理运行所有已设置的回调的任务。
参数: - intervalint,默认值:1000ms
计时器事件之间的时间(毫秒)。将存储为
timer.interval
.- callbacks表 [tuple[可调用,tuple,dict] ]
将在计时器事件上调用的(func、args、kwargs)元组列表。此列表可作为
timer.callbacks
可以直接操作,或者add_callback
和remove_callback
可以使用。
-
add_callback
(func, *args, **kwargs)[源代码]¶ 寄存器 func 当事件触发时由计时器调用。提供的任何其他参数都将传递给 func .
此函数返回 func 这使得它可以用作装饰。
-
property
interval
¶ 计时器事件之间的时间,以毫秒为单位。
-
remove_callback
(func, *args, **kwargs)[源代码]¶ 去除 func 从回调列表中。
args 和 关键字参数 是可选的,用于区分注册为使用不同参数调用的同一函数的副本。此行为已弃用。未来,
*args, **kwargs
将不再考虑;若要使特定回调自身可移动,请将其传递给add_callback
作为一个functools.partial
对象。
-
property
single_shot
¶ 此计时器是否应在单次运行后停止。
-
class
matplotlib.backend_bases.
ToolContainerBase
(toolmanager)[源代码]¶ 基类:
object
所有工具容器的基类,例如工具栏。
属性: - 工具管理器 :
ToolManager
ToolManager
使用的工具
ToolContainer
想要沟通。
-
add_tool
(tool, group, position=- 1)[源代码]¶ 将工具添加到此容器。
参数: - tooltool_like
要添加的工具,请参见
ToolManager.get_tool
.- groupSTR
要将此工具添加到的组的名称。
- positionint,默认值:-1
组中放置此工具的位置。
-
add_toolitem
(name, group, position, image, description, toggle)[源代码]¶ 将toolitem添加到容器中。
此方法必须在每个后端实现。
与Button Click事件关联的回调必须是 确切地
self.trigger_tool(name)
.参数:
-
remove_toolitem
(name)[源代码]¶ 从中移除工具项
ToolContainer
.此方法必须在每个后端实现。
何时调用
ToolManager
发射一个tool_removed_event
.参数: - nameSTR
要删除的工具的名称。
- 工具管理器 :
额外鼠标按钮的默认Matplotlib按钮操作。
参数与
key_press_handler
除了 事件 是一个MouseEvent
.
-
matplotlib.backend_bases.
key_press_handler
(event, canvas=None, toolbar=None)[源代码]¶ 实现画布和工具栏的默认Matplotlib键绑定,如中所述 导航键盘快捷键 .
参数: - 事件 :
KeyEvent
KeyEvent
关键新闻/发布事件。
- 帆布 :
FigureCanvasBase
,默认值:event.canvas
FigureCanvasBase,默认值:事件.canvas 后端特定的画布实例。保留此参数是为了向后兼容,但如果设置,则应始终等于
event.canvas
.- 工具栏 :
NavigationToolbar2
,默认值:event.canvas.toolbar
导航工具栏2,默认值:事件.canvas.toolbar 导航光标工具栏。保留此参数是为了向后兼容,但如果设置,则应始终等于
event.canvas.toolbar
.
- 事件 :