使用Matplotlib在一个图形中绘制三个图形

使用Matplotlib在一个图形中绘制三个图形,matplotlib,Matplotlib,我希望我的绘图看起来像下图,如何使用Matplotlib实现这一点 谢谢您可以使用类似的GridSpec。可能没有足够的空间放置y记号标签,这可以通过增加默认的wspace来缓解 导入matplotlib.pyplot作为plt 图,axs=plt.subplot(ncols=4,nrows=2,figsize=(12,7),gridspec_kw={'wspace':0.4}) gs=axs[0,0]。获取\u gridspec() 对于axs.ravel()中的ax: ax.remove(

我希望我的绘图看起来像下图,如何使用Matplotlib实现这一点


谢谢

您可以使用类似的
GridSpec
。可能没有足够的空间放置y记号标签,这可以通过增加默认的
wspace
来缓解

导入matplotlib.pyplot作为plt
图,axs=plt.subplot(ncols=4,nrows=2,figsize=(12,7),gridspec_kw={'wspace':0.4})
gs=axs[0,0]。获取\u gridspec()
对于axs.ravel()中的ax:
ax.remove()
ax1=图添加子批次(gs[0,:2])
ax1.set_ylabel('A'))
ax2=图add_子批次(gs[0,2:]
ax2.set_ylabel('B')
ax3=图添加子批次(gs[1,1:3])
ax3.set_ylabel('C')
对于ax-in(ax1、ax2、ax3):
ax.set\u xlabel('D')
ax.legend(句柄=[],title='legend',loc='右上角',frameon=False)
plt.show()