单个图中的多个gridspec布局

时间:2018-04-04 15:43:37

标签: matplotlib subplot

使用GridSpec制作子图,我想在我的网格上有不同的hspace或wspace。我在某处读到最简单的方法是为单个绘图创建不同的网格,这样我的参数hspace和wspace就可以有不同的值。

但是,我可以堆叠不同网格的唯一情况是粘贴文档中给出的示例:https://matplotlib.org/users/gridspec.html#adjust-gridspec-layout

有人可以解释为什么在下面的代码中,只显示最后一个网格?目标只是垂直堆叠两个网格。

gs_top = gridspec.GridSpec(2, 2)

ax1 = plt.subplot(gs_top[0:2, 0:2])
#ax2 = plt.subplot(gs_top[0:2, 1])

gs_bottom = gridspec.GridSpec(2, 2)

ax3 = plt.subplot(gs_bottom[0, 0])
ax4 = plt.subplot(gs_bottom[0, 1])
ax5 = plt.subplot(gs_bottom[1, 0:2])

我真的不明白如何控制“网格堆叠”...... 在doc的例子中,python如何知道网格是水平堆叠而不是垂直堆叠?

谢谢!

1 个答案:

答案 0 :(得分:0)

the example中,第一个网格位于图的左侧,因为其子图参数设置为

gs1.update(left=0.05, right=0.48)

从图形宽度的5%开始,从图形宽度结束48%。 第二个网格,

gs2.update(left=0.55, right=0.98)

从55%开始,到98%结束。 100%将是正确的人物优势。

您可以使用leftright代替bottomtop进行垂直定位。