matplotlib.backends.registry#

class matplotlib.backends.registry.BackendFilter(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[源代码][源代码]#

基类:Enum

list_builtin() 一起使用的过滤器

Added in version 3.9.

INTERACTIVE = 0[源代码]#
NON_INTERACTIVE = 1[源代码]#
class matplotlib.backends.registry.BackendRegistry[源代码][源代码]#

基类:object

Matplotlib 中可用的后端注册表。

这是可用后端的单一真实来源。

所有对 BackendRegistry 的使用都应该通过单例实例 backend_registry 进行,该实例可以从 matplotlib.backends 导入。

每个后端都有一个名称、一个包含后端代码的模块名称,以及一个可选的GUI框架,如果后端是交互式的,则必须运行该框架。后端有三种来源:内置的(源代码在Matplotlib仓库内)、显式的 module://some.backend 语法(通过加载模块获取后端),或通过入口点(外部包中的自注册后端)。

Added in version 3.9.

backend_for_gui_framework(framework)[源代码][源代码]#

返回与指定GUI框架对应的backend名称。

参数:
框架str

如“qt”这样的GUI框架。

返回:
str 或 None

如果未识别出GUI框架,则为后端名称或None。

is_valid_backend(backend)[源代码][源代码]#

如果后端名称有效则返回 True,否则返回 False。

后端名称有效,如果它是内置后端之一,或者通过入口点动态添加。那些以 module:// 开头的总是被认为是有效的,并且在这个函数中被添加到当前所有后端的列表中。

即使一个名称是有效的,它也可能不可导入或不可使用。这只能通过加载和使用后端模块来确定。

参数:
后端str

后端名称。

返回:
布尔

如果后端有效则为True,否则为False。

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

返回所有已知后端的列表。

这些包括内置的后端以及那些在运行时通过入口点或显式的 module://some.backend 语法获得的后端。

如果尚未加载,将加载入口点。

返回:
list of str

后端名称。

list_builtin(filter_=None)[源代码][源代码]#

返回 Matplotlib 内置的后端列表。

参数:
filter_ : BackendFilter, 可选BackendFilter, 可选

应用于返回后端的过滤器。例如,要仅返回非交互式后端,请使用 BackendFilter.NON_INTERACTIVE

返回:
list of str

后端名称。

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

返回 Matplotlib 后端使用的 GUI 框架列表。

返回:
list of str

GUI 框架名称。

load_backend_module(backend)[源代码][源代码]#

加载并返回包含指定后端的模块。

参数:
后端str

要加载的后端名称。

返回:
模块

包含后端的模块。

resolve_backend(backend)[源代码][源代码]#

返回指定后端名称的后端和GUI框架。

如果尚未确定GUI框架,则将通过加载后端模块并检查 FigureCanvas.required_interactive_framework 属性来确定。

此函数仅在入口点尚未加载且后端不是内置的且不是 module://some.backend 格式时加载入口点。

参数:
后端str 或 None

后端名称,或 None 以使用默认后端。

返回:
后端str

后端名称。

框架str 或 None

GUI 框架,对于非交互式的后端,该值将为 None。

resolve_gui_or_backend(gui_or_backend)[源代码][源代码]#

按顺序返回指定字符串的后端和GUI框架,该字符串可能是GUI框架或后端名称,按此顺序进行测试。

这是用于 IPython %matplotlib 魔法命令,可以是如 %matplotlib qt 这样的 GUI 框架,或者是如 %matplotlib qtagg 这样的后端名称。

此函数仅在入口点尚未加载且后端不是内置的且不是 module://some.backend 格式时加载入口点。

参数:
gui_or_backendstr 或 None

GUI 框架或后端的名称,或 None 以使用默认后端。

返回:
后端str

后端名称。

框架str 或 None

GUI 框架,对于非交互式的后端,该值将为 None。