我正在绘制用python编写的高斯拟合脚本的输出,并希望将输出绘制在一个图中,以显示长轴和短轴的原始数据和出线图。
为此,我使用matplotlib.gridspec
定义了一个网格,然后在其顶部添加了图形。但是,图像上方的划线图要比图像本身宽得多,我希望它们具有相同的大小,最好将其缩小一点。
fig = plt.figure(constrained_layout=True)
gs = GridSpec(4, 4, figure=fig)
ax1 = fig.add_subplot(gs[1:4,0:3])
ax2 = fig.add_subplot(gs[0,0:3])
ax3 = fig.add_subplot(gs[1:4,3])
ax1.imshow(Z, cmap=cm.jet, origin='lower', extent=(x.min(), x.max(), y.min(), y.max()))
ax1.plot(Ly,y[:,0],color=[0.8, 0, 0],linewidth=2)
ax1.plot(x[0,:],Lx,color=[0, 0.8, 0],linewidth=2)
ax1.axis([x.min(), x.max(), y.min(), y.max()])
ax2.plot(x[0,:],xFit,color=[0, 0.8, 0],linewidth=2)
plt.xticks(np.arange(0, 1, step=0.5))
ax2.axis([x.min(), x.max(), 0, 1])
ax2.grid()
ax3.plot(yFit,y[:,0],color=[0.8, 0, 0],linewidth=2)
plt.xticks(np.arange(0, 1, step=0.5))
ax3.xaxis.tick_top()
ax3.axis([0, 1, y.min(), y.max()])
ax3.grid()
plt.show()
当前,这是我得到的输出:
任何帮助或建议都将不胜感激。