gpt4 book ai didi

python - 调整 gridspec 中的填充/图形边距

转载 作者:太空宇宙 更新时间:2023-11-03 13:11:38 26 4
gpt4 key购买 nike

我的子图在图中的位置有点奇怪。顶部、底部和左侧有大量空间,我不需要,但右边距离右轴标签有点太近了。请参阅示例。 The example figure with grey background to see the padding

我生成的代码如下。请注意,我使用了 tight_layout 和 subplots_adjust,但它们都不起作用。

fig = plt.figure(figsize=(7.5,10.))
fig.patch.set_facecolor('silver')
gs = gridspec.GridSpec(3,2,hspace=0.4,wspace=0.1)

ax1 = plt.subplot(gs[:,0])
a1 = plt.plot(x, y, linestyle='-',color='b')
a1 = plt.ylabel('Y')
a1 = plt.ylim(zmax[c],zmin[c])
a1 = plt.xlabel('X')
a1 = plt.xticks([np.around(min(x),2),np.around(min(x)/2,2),0,np.around(max(x)/2,2),np.around(max(x),2)])
a1 = plt.title('(a)',fontsize=12)

ax2 = plt.subplot(gs[0,1])
a2 = plt.plot(x2,y2, linestyle='',marker='o',color='b' )
a2 = plt.ylabel('value')
ax2.yaxis.tick_right()
ax2.yaxis.set_ticks_position('both')
ax2.yaxis.set_label_position("right")
a2 = plt.xlabel('number')
a2 = plt.title('(b)',fontsize=12)

ax3 = plt.subplot(gs[1,1])
a3 = plt.plot(x3,y3, linestyle='--',color='b')
a3 = plt.ylabel('another y')
ax3.yaxis.tick_right()
ax3.yaxis.set_ticks_position('both')
ax3.yaxis.set_label_position("right")
a3 = plt.xlabel('x')
a3 = plt.title('(c)',fontsize=12)

ax4 = plt.subplot(gs[2,1])
a4 = plt.plot(x4,y4, linestyle='--',color='b')
a4 = plt.ylabel('y')
ax4.yaxis.tick_right()
ax4.yaxis.set_ticks_position('both')
ax4.yaxis.set_label_position("right")
a4 = plt.xlabel('x')
a4 = plt.title('(c)',fontsize=12)

plt.suptitle('Title', fontsize=12,y=0.95)
plt.subplots_adjust(left=0, bottom=0, right=1, top=0, wspace=0, hspace=0)
#fig = plt.tight_layout()
plt.show()

问题是:如何在缩小其他边距并保留子图之间的填充的同时增加右边距?

最佳答案

我认为您可以在 GridSpec 环境中执行此操作:

gs = gridspec.GridSpec(3,2,hspace=0.4,wspace=0.1)
gs.update(left=0.1,right=0.9,top=0.965,bottom=0.03,wspace=0.3,hspace=0.09)

您可以使用它控制您的面板如何靠近左/右/上/下边距。对我来说效果很好。

关于python - 调整 gridspec 中的填充/图形边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42357765/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com