使用 matplotlib 子图时减少行之间的间隙?

yua*_*hou 4 python matplotlib

我的子图结果 次要情节

我的代码

fig,ax = plt.subplots(rows,cols, figsize = [24,24])
plt.subplots_adjust(hspace=0, wspace=0)

for i in range(cols):
    step = 6
    ind = i*step
    ax[0,i].imshow(a[ind,:,:],cmap='gray')
    ax[0,i].axis('off')

    ax[1,i].imshow(b[ind,:,:],cmap='gray')
    ax[1,i].axis('off')

    ax[2,i].imshow(c[ind,:,:],cmap='gray')
    ax[2,i].axis('off')
Run Code Online (Sandbox Code Playgroud)

然而,似乎 plt.subplots_adjust(hspace=0, wspace=0) 根本不起作用。我注意到它强制图形具有相同的 x 和 y 大小,你能帮我纠正这个问题吗?

Imp*_*est 6

您可以在垂直方向缩小图形尺寸,例如

fig,ax = plt.subplots(rows,cols, figsize = [24,12])
Run Code Online (Sandbox Code Playgroud)

或者您可以保留正方形图形大小,但在子图周围留出更多边距

plt.subplots_adjust(bottom=0.3, top=0.7, hspace=0)
Run Code Online (Sandbox Code Playgroud)