控制色条的位置和大小,使用嵌入轴#

本示例展示了如何使用 inset_axes 控制色条的位置、高度和宽度。

嵌入轴的放置方式与图例(legends)的放置方式相同:既可以通过提供 *loc* 选项(“upper right”、“best”等),也可以通过提供相对于父边框(parent bbox)的定位器(locator)来控制。诸如 *bbox_to_anchor* 和 *borderpad* 等参数也以相同的方式工作,并在此处进行了演示。

用户应考虑改用 Axes.inset_axes (参见 放置色条)。

demo colorbar with inset locator
import matplotlib.pyplot as plt

from mpl_toolkits.axes_grid1.inset_locator import inset_axes

fig, (ax1, ax2) = plt.subplots(1, 2, figsize=[6, 3])

im1 = ax1.imshow([[1, 2], [2, 3]])
axins1 = inset_axes(
    ax1,
    width="50%",  # width: 50% of parent_bbox width
    height="5%",  # height: 5%
    loc="upper right",
)
axins1.xaxis.set_ticks_position("bottom")
fig.colorbar(im1, cax=axins1, orientation="horizontal", ticks=[1, 2, 3])

im = ax2.imshow([[1, 2], [2, 3]])
axins = inset_axes(
    ax2,
    width="5%",  # width: 5% of parent_bbox width
    height="50%",  # height: 50%
    loc="lower left",
    bbox_to_anchor=(1.05, 0., 1, 1),
    bbox_transform=ax2.transAxes,
    borderpad=0,
)
fig.colorbar(im, cax=axins, ticks=[1, 2, 3])

plt.show()

由 Sphinx-Gallery 生成的画廊