matplotlib.axes#

The Axes 类表示图中的一个(子)绘图。它包含绘制的数据、轴刻度、标签、标题、图例等。它的方法是操作绘图的主要接口。

Axes 类#

Axes

一个 Axes 对象封装了图中单个(子)绘图的所有元素。

属性#

Axes.viewLim

视图限制,以数据坐标中的 Bbox 表示。

Axes.dataLim

包含 Axes 中显示的所有数据的边界 Bbox

Axes.spines

Axes 脊柱的 Spines 容器,即表示数据区域边界的线条。

绘图#

基础#

Axes.plot

将 y 对 x 绘制为线和/或标记。

Axes.errorbar

将 y 对 x 绘制为带有误差线的线和/或标记。

Axes.scatter

yx 的散点图。

Axes.plot_date

[已弃用] 绘图时强制轴将浮点数视为日期。

Axes.step

绘制阶梯图。

Axes.loglog

绘制 x 轴和 y 轴均采用对数刻度的图。

Axes.semilogx

绘制 x 轴采用对数刻度的图。

Axes.semilogy

绘制 y 轴采用对数刻度的图。

Axes.fill_between

填充两条水平曲线之间的区域。

Axes.fill_betweenx

填充两条垂直曲线之间的区域。

Axes.bar

绘制条形图。

Axes.barh

绘制水平条形图。

Axes.bar_label

为条形图添加标签。

Axes.stem

创建一个茎叶图。

Axes.eventplot

在给定位置绘制相同的平行线。

Axes.pie

绘制饼图。

Axes.stackplot

绘制堆叠面积图或流线图。

Axes.broken_barh

绘制一系列水平矩形。

Axes.vlines

在每个 x 处绘制从 yminymax 的垂直线。

Axes.hlines

在每个 y 位置从 xminxmax 绘制水平线。

Axes.fill

绘制填充多边形。

跨度#

Axes.axhline

添加一条水平线,跨越 Axes 的全部或部分。

Axes.axhspan

在 Axes 上添加一个水平跨度(矩形)。

Axes.axvline

添加一条垂直线,跨越整个或部分坐标轴。

Axes.axvspan

在 Axes 上添加一个垂直跨度(矩形)。

Axes.axline

添加一条无限长的直线。

光谱#

Axes.acorr

绘制 x 的自相关。

Axes.angle_spectrum

绘制角度谱。

Axes.cohere

绘制 *x* 和 *y* 之间的相干性。

Axes.csd

绘制交叉谱密度。

Axes.magnitude_spectrum

绘制幅度谱。

Axes.phase_spectrum

绘制相位谱。

Axes.psd

绘制功率谱密度。

Axes.specgram

绘制频谱图。

Axes.xcorr

绘制 xy 之间的互相关。

统计#

Axes.ecdf

计算并绘制 x 的经验累积分布函数。

Axes.boxplot

绘制箱线图。

Axes.violinplot

绘制小提琴图。

Axes.bxp

从预计算的统计数据绘制箱线图。

Axes.violin

从预计算的统计数据绘制小提琴图。

分箱#

Axes.hexbin

绘制点 x, y 的 2D 六边形分箱图。

Axes.hist

计算并绘制直方图。

Axes.hist2d

绘制 2D 直方图。

Axes.stairs

绘制阶梯状常数函数,作为线条或填充图。

等高线#

Axes.clabel

为等高线图添加标签。

Axes.contour

绘制等高线。

Axes.contourf

绘制填充等高线。

2D 数组#

Axes.imshow

将数据显示为图像,即在 2D 规则栅格上。

Axes.matshow

将 2D 矩阵或数组的值绘制为颜色编码图像。

Axes.pcolor

创建一个带有非规则矩形网格的伪彩色图。

Axes.pcolorfast

创建一个带有非规则矩形网格的伪彩色图。

Axes.pcolormesh

创建一个带有非规则矩形网格的伪彩色图。

Axes.spy

绘制 2D 数组的稀疏模式。

非结构化三角形#

Axes.tripcolor

创建一个非结构化三角网格的伪彩色图。

Axes.triplot

将非结构化三角形网格绘制为线和/或标记。

Axes.tricontour

在非结构化三角形网格上绘制等高线。

Axes.tricontourf

在非结构化三角形网格上绘制等高线区域。

文本和注释#

Axes.annotate

用文本 text 注释点 xy

Axes.text

向坐标系中添加文本。

Axes.table

Axes 添加表格。

Axes.arrow

[已弃用] 向 Axes 添加箭头。

Axes.inset_axes

向此现有 Axes 添加一个子 inset Axes。

Axes.indicate_inset

向 Axes 添加一个 inset 指示器。

Axes.indicate_inset_zoom

根据 inset_ax 的轴限制,向 Axes 添加一个 inset 指示矩形,并在 inset_ax 和矩形之间绘制连接线。

Axes.secondary_xaxis

向此 Axes 添加第二个 x 轴。

Axes.secondary_yaxis

向此 Axes 添加第二个 y 轴。

矢量场#

Axes.barbs

绘制 2D 风矢图。

Axes.quiver

绘制 2D 箭头场。

Axes.quiverkey

为quiver图添加图例。

Axes.streamplot

绘制矢量流的流线。

清除#

Axes.cla

清除 Axes。

Axes.clear

清除 Axes。

外观#

Axes.axis

获取或设置某些轴属性的便捷方法。

Axes.set_axis_off

隐藏 X 轴和 Y 轴的所有视觉组件。

Axes.set_axis_on

不隐藏 x 轴和 y 轴的所有可视化组件。

Axes.set_frame_on

设置是否绘制 Axes 矩形补丁。

Axes.get_frame_on

获取是否绘制 Axes 矩形补丁。

Axes.set_axisbelow

设置轴刻度线和网格线是在大多数 artist 之上还是之下。

Axes.get_axisbelow

获取轴刻度线和网格线是在大多数 artist 之上还是之下。

Axes.grid

配置网格线。

Axes.get_facecolor

获取 Axes 的面颜色。

Axes.set_facecolor

设置 Axes 的面颜色。

属性循环#

Axes.set_prop_cycle

设置 Axes 的属性循环。

轴 / 限制#

轴访问#

Axes.xaxis

X 轴实例 XAxis

Axes.yaxis

Y 轴实例 YAxis

Axes.get_xaxis

[已弃用] 返回 XAxis 实例。

Axes.get_yaxis

[已弃用] 返回 YAxis 实例。

轴限制和方向#

Axes.invert_xaxis

反转 x 轴。

Axes.xaxis_inverted

返回 x 轴是否朝向“反向”。

Axes.invert_yaxis

反转 y 轴。

Axes.yaxis_inverted

返回 y 轴是否沿“反向”方向定位。

Axes.set_xlim

设置 x 轴视图限制。

Axes.get_xlim

返回 x 轴视图限制。

Axes.set_ylim

设置 y 轴视图限制。

Axes.get_ylim

返回 y 轴视图限制。

Axes.update_datalim

扩展 dataLim Bbox 以包含给定点。

Axes.set_xbound

设置 x 轴的下限和上限数值范围。

Axes.get_xbound

返回 x 轴的下限和上限数值范围,按升序排列。

Axes.set_ybound

设置 y 轴的上下数值边界。

Axes.get_ybound

返回 y 轴的下限和上限数值范围,按升序排列。

轴标签、标题和图例#

Axes.set_xlabel

设置 x 轴的标签。

Axes.get_xlabel

获取 x 轴标签文本字符串。

Axes.set_ylabel

设置 y 轴的标签。

Axes.get_ylabel

获取 y 轴标签文本字符串。

Axes.label_outer

只显示“外部”标签和刻度标签。

Axes.set_title

为 Axes 设置标题。

Axes.get_title

获取 Axes 标题。

Axes.legend

在 Axes 上放置图例。

Axes.get_legend

返回 Legend 实例,如果未定义图例则返回 None。

Axes.get_legend_handles_labels

返回图例的句柄和标签

轴刻度#

Axes.set_xscale

设置 x 轴的比例。

Axes.get_xscale

返回 x 轴的比例(字符串形式)。

Axes.set_yscale

设置 y 轴的比例。

Axes.get_yscale

返回 y 轴的比例(字符串形式)。

自动缩放和边距#

Axes.use_sticky_edges

自动缩放时,是否遵守所有 Artist.sticky_edges

Axes.margins

设置或检索数据周围的边距,用于自动缩放轴限制。

Axes.get_xmargin

检索 x 轴的自动缩放边距。

Axes.get_ymargin

检索 y 轴的自动缩放边距。

Axes.set_xmargin

在自动缩放之前设置 X 数据限制的填充。

Axes.set_ymargin

在自动缩放之前设置 Y 数据限制的填充。

Axes.relim

根据当前 artists 重新计算数据限制。

Axes.autoscale

将轴视图自动缩放至数据(切换)。

Axes.autoscale_view

使用数据限制自动缩放视图限制。

Axes.set_autoscale_on

设置下次绘制或调用 Axes.autoscale_view 时是否对每个轴应用自动缩放。

Axes.get_autoscale_on

如果每个轴都自动缩放,则返回 True,否则返回 False。

Axes.set_autoscalex_on

设置绘制时或通过 Axes.autoscale_view 是否自动缩放 x 轴。

Axes.get_autoscalex_on

返回 x 轴是否自动缩放。

Axes.set_autoscaley_on

设置绘制时或通过 Axes.autoscale_view 是否自动缩放 y 轴。

Axes.get_autoscaley_on

返回 y 轴是否自动缩放。

纵横比#

Axes.apply_aspect

根据指定的数据纵横比调整 Axes。

Axes.set_aspect

设置 Axes 缩放的纵横比,即 y/x 比例。

Axes.get_aspect

返回 Axes 缩放的纵横比。

Axes.set_box_aspect

设置 Axes 框的纵横比,即高度与宽度的比率。

Axes.get_box_aspect

返回 Axes 框的纵横比,即高度与宽度的比率。

Axes.set_adjustable

设置 Axes 如何调整以达到所需的纵横比。

Axes.get_adjustable

返回 Axes 是否会调整其物理尺寸('box')或其数据限制('datalim')以达到所需的纵横比。

刻度线和刻度标签#

Axes.set_xticks

设置 x 轴的刻度位置和可选的刻度标签。

Axes.get_xticks

返回 x 轴在数据坐标中的刻度位置。

Axes.set_xticklabels

[已弃用] 使用字符串标签列表设置 x 轴的刻度标签。

Axes.get_xticklabels

获取 x 轴的刻度标签。

Axes.get_xmajorticklabels

返回 x 轴的主刻度标签,为 Text 列表。

Axes.get_xminorticklabels

返回 x 轴的次刻度标签,为 Text 列表。

Axes.get_xgridlines

返回 x 轴的网格线,为 Line2D 列表。

Axes.get_xticklines

返回 x 轴的刻度线,为 Line2D 列表。

Axes.xaxis_date

设置轴刻度和标签,将 x 轴上的数据视为日期。

Axes.set_yticks

设置 y 轴的刻度位置和可选的刻度标签。

Axes.get_yticks

返回 y 轴在数据坐标中的刻度位置。

Axes.set_yticklabels

[已弃用] 使用字符串标签列表设置 y 轴的刻度标签。

Axes.get_yticklabels

获取 y 轴的刻度标签。

Axes.get_ymajorticklabels

返回 y 轴的主刻度标签,为 Text 列表。

Axes.get_yminorticklabels

返回 y 轴的次刻度标签,为 Text 列表。

Axes.get_ygridlines

返回 y 轴的网格线,为 Line2D 列表。

Axes.get_yticklines

返回 y 轴的刻度线,为 Line2D 列表。

Axes.yaxis_date

设置轴刻度和标签,将 y 轴上的数据视为日期。

Axes.minorticks_off

从 Axes 中移除次刻度。

Axes.minorticks_on

在 Axes 上显示次刻度。

Axes.ticklabel_format

配置默认用于线性 Axes 的 ScalarFormatter

Axes.tick_params

更改刻度、刻度标签和网格线的显示。

Axes.locator_params

控制主要刻度定位器的行为。

单位#

Axes.convert_xunits

使用 x 轴的单位类型转换 *x*。

Axes.convert_yunits

使用 y 轴的单位类型转换 y

Axes.have_units

返回任何轴上是否设置了单位。

添加 artist#

Axes.add_artist

向 Axes 添加一个 Artist;返回该 artist。

Axes.add_child_axes

向 Axes 的子 Axes 添加一个 Axes;返回该子 Axes。

Axes.add_collection

向 Axes 添加一个 Collection;返回该 collection。

Axes.add_container

向 Axes 的容器中添加一个 Container;返回该 container。

Axes.add_image

向 Axes 添加一个 AxesImage;返回该图像。

Axes.add_line

向 Axes 添加一个 Line2D;返回该线。

Axes.add_patch

向 Axes 添加一个 Patch;返回该 patch。

Axes.add_table

向 Axes 添加一个 Table;返回该表格。

孪生和共享#

Axes.twinx

创建一个共享 x 轴的孪生 Axes。

Axes.twiny

创建一个共享 y 轴的孪生 Axes。

Axes.sharex

other 共享 x 轴。

Axes.sharey

other 共享 y 轴。

Axes.get_shared_x_axes

返回共享 x 轴 Grouper 的不可变视图。

Axes.get_shared_y_axes

返回共享 y 轴 Grouper 的不可变视图。

Axes 位置#

Axes.get_anchor

获取锚点位置。

Axes.set_anchor

定义锚点位置。

Axes.get_axes_locator

返回 axes_locator。

Axes.set_axes_locator

设置 Axes 定位器。

Axes.get_subplotspec

返回与子图关联的 SubplotSpec,如果不存在则返回 None。

Axes.set_subplotspec

设置 SubplotSpec

Axes.reset_position

将当前位置重置为原始位置。

Axes.get_position

返回 Axes 在图中的位置,为一个 Bbox

Axes.set_position

设置 Axes 位置。

异步/事件驱动#

Axes.stale

artist 是否“过时”,需要重新绘制以使输出与 artist 的内部状态匹配。

Axes.pchanged

调用所有已注册的回调函数。

Axes.add_callback

添加一个回调函数,当 Artist 的某个属性更改时将被调用。

Axes.remove_callback

根据其观察者 ID 移除回调函数。

交互式#

Axes.can_pan

返回此 Axes 是否支持任何平移/缩放按钮功能。

Axes.can_zoom

返回此 Axes 是否支持缩放框按钮功能。

Axes.get_navigate

获取 Axes 是否响应导航命令。

Axes.set_navigate

设置 Axes 是否响应导航工具栏命令。

Axes.get_navigate_mode

获取导航工具栏按钮状态:“PAN”(平移)、“ZOOM”(缩放)或 None。

Axes.set_navigate_mode

设置导航工具栏按钮状态。

Axes.get_forward_navigation_events

获取平移/缩放事件如何转发到此 Axes 下方的 Axes。

Axes.set_forward_navigation_events

设置平移/缩放事件如何转发到此 Axes 下方的 Axes。

Axes.start_pan

当平移操作开始时调用。

Axes.drag_pan

在平移操作期间鼠标移动时调用。

Axes.end_pan

当平移操作完成时调用(鼠标按钮松开时)。

Axes.format_coord

返回格式化 xy 坐标的格式字符串。

Axes.format_cursor_data

返回 data 的字符串表示形式。

Axes.format_xdata

返回格式化为 x 值的 x

Axes.format_ydata

返回格式化为 y 值的 y

Axes.mouseover

返回当鼠标光标移动到此 artist 上时,是否会查询其自定义上下文信息。

Axes.in_axes

返回给定事件(在显示坐标中)是否在 Axes 内。

Axes.contains

测试艺术家是否包含鼠标事件。

Axes.contains_point

返回 point(一对像素坐标)是否在 Axes patch 内。

Axes.get_cursor_data

返回给定事件的光标数据。

子对象#

Axes.get_children

返回此 Artist 的子 Artist 列表。

Axes.get_images

返回 Axes 中包含的 AxesImage 列表。

Axes.get_lines

返回 Axes 中包含的线列表。

Axes.findobj

查找 artist 对象。

绘制#

Axes.draw

使用给定的渲染器绘制 Artist(及其子对象)。

Axes.draw_artist

高效重绘单个 artist。

Axes.redraw_in_frame

高效重绘 Axes 数据,但不包括轴刻度、标签等。

Axes.get_rasterization_zorder

返回 artist 将被栅格化的 zorder 值。

Axes.set_rasterization_zorder

设置矢量图形输出的栅格化 zorder 阈值。

Axes.get_window_extent

返回 Axes 在显示空间中的边界框。

Axes.get_tightbbox

返回 Axes 的紧密边界框,包括轴及其装饰器(xlabel、标题等)。

投影#

Axis 使用的方法,对于非直线 Axes 必须重写。

Axes.name

Axes.get_xaxis_transform

获取用于绘制 x 轴标签、刻度和网格线的变换。

Axes.get_yaxis_transform

获取用于绘制 y 轴标签、刻度和网格线的变换。

Axes.get_data_ratio

返回缩放数据的纵横比。

Axes.get_xaxis_text1_transform

Axes.get_xaxis_text2_transform

Axes.get_yaxis_text1_transform

Axes.get_yaxis_text2_transform

其他#

Axes.zorder

Axes.get_default_bbox_extra_artists

返回用于边界框计算的 artist 的默认列表。

Axes.get_transformed_clip_path_and_affine

返回剪裁路径(已应用其非仿射变换部分)以及其变换的剩余仿射部分。

Axes.has_data

返回是否已将任何 artist 添加到 Axes。

Axes.set

一次性设置多个属性。

Axes.remove

如果可能,从图中移除该 artist。

class matplotlib.axes.Axes.ArtistList(axes, prop_name, valid_types=None, invalid_types=None)#

根据 Axes 子对象的类型而形成的子列表。

Matplotlib 3.7 中,特定类型的子对象子列表被设置为不可变。将来这些 artist 列表可能会被元组取代。请将其视为元组使用。

参数:
axesAxes

此子列表将从中获取子 Artist 的 Axes。

prop_namestr

用于从 Axes 访问此子列表的属性名称;用于生成弃用警告。

valid_typeslist of type, 可选

一个类型列表,用于确定此子列表将返回哪些子对象。如果指定,则子列表中的 Artist 必须是这些类型中的任何一个的实例。如果未指定,则任何类型的 Artist 均有效(除非受 invalid_types 限制)。

invalid_typestuple, 可选

一个类型列表,用于确定此子列表将返回哪些子对象。如果指定,则子列表中的 Artist 永远不会是这些类型的实例。否则,不会排除任何类型。