使用 subplots 和 GridSpec 组合两个子图#

有时我们希望将两个子图组合到使用 subplots 创建的 Axes 布局中。我们可以从 Axes 获取 GridSpec,然后删除覆盖的 Axes,并用新的更大的 Axes 填充间隙。这里我们创建一个布局,其中最后一列中的底部两个 Axes 合并在一起。

要从这个布局开始(而不是删除重叠的 Axes),请使用 subplot_mosaic.

另请参阅 在一个 Figure 中排列多个 Axes.

gridspec and subplots
import matplotlib.pyplot as plt

fig, axs = plt.subplots(ncols=3, nrows=3)
gs = axs[1, 2].get_gridspec()
# remove the underlying Axes
for ax in axs[1:, -1]:
    ax.remove()
axbig = fig.add_subplot(gs[1:, -1])
axbig.annotate('Big Axes \nGridSpec[1:, -1]', (0.1, 0.5),
               xycoords='axes fraction', va='center')

fig.tight_layout()

plt.show()

由 Sphinx-Gallery 生成的图库