matplotlib.axes.Axes.apply_aspect#

Axes.apply_aspect(position=None)[源代码]#

调整轴以适应指定的数据纵横比。

根据 get_adjustable ,这将修改 Axes 框(位置)或视图限制。在前一种情况下, get_anchor 将影响位置。

参数:
位置无或 .Bbox

备注

此参数因历史原因而存在,并被视为内部使用。最终用户不应使用它。

如果不是 None,这将定义 Axes 在图中的位置作为 Bbox。有关更多详细信息,请参见 get_position

参见

matplotlib.axes.Axes.set_aspect

关于纵横比处理的描述。

matplotlib.axes.Axes.set_adjustable

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

matplotlib.axes.Axes.set_anchor

设置位置以应对额外空间。

matplotlib.figure.Figure.draw_without_rendering

更新图表中所有过时的组件。

注释

当每个 Axes 被绘制时,这会自动调用。如果你需要在 Figure 绘制之前更新 Axes 的位置和/或视图限制,你可能需要手动调用它。

一个范围更广的替代方法是 Figure.draw_without_rendering,它会更新图表中所有过时的组件,而不仅仅是单个 Axes 的位置/视图限制。

示例

一个典型的使用示例如下。imshow 将纵横比设置为1,但由于性能原因,调整Axes位置和范围以反映这一点被推迟到渲染时。如果你想在之前知道Axes的大小,你需要调用 apply_aspect 以获取正确的值。

>>> fig, ax = plt.subplots()
>>> ax.imshow(np.zeros((3, 3)))
>>> ax.bbox.width, ax.bbox.height
(496.0, 369.59999999999997)
>>> ax.apply_aspect()
>>> ax.bbox.width, ax.bbox.height
(369.59999999999997, 369.59999999999997)