一、总结
一句话总结:
method 1:subplot2grid:axl=plt.subplot2grid((3,4),(0,0),colspan=4,rowspan=1)
method 2:gridspec:gs=gridspec.GridSpec(3,3); ax1 = plt.subplot(gs[0,:])
method 3:easy to define structure:f,((ax11,ax12),(ax21,ax22))=plt.subplots(2,2,sharex=True,sharey=True)
二、Subplot 分格显示
博客对应课程的视频位置:
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
In [42]:
# method 1:subplot2grid
plt.figure()
axl=plt.subplot2grid((3,4),(0,0),colspan=4,rowspan=1)
axl.plot([1,2],[1,2])
axl.set_title('axl_title')
ax2=plt.subplot2grid((3,4),(1,0),colspan=2,)
ax3=plt.subplot2grid((3,4),(1,2),rowspan=2)
ax4=plt.subplot2grid((3,4),(2,0))
ax5=plt.subplot2grid((3,4),(2,1))
ax6=plt.subplot2grid((3,4),(2,3))
plt.tight_layout()
plt.show()
In [48]:
# method 2:gridspec
plt.figure()
gs=gridspec.GridSpec(3,3)
ax1 = plt.subplot(gs[0,:])
ax2 = plt.subplot(gs[1,:2])
ax3 = plt.subplot(gs[1:,2])
ax4 = plt.subplot(gs[-1,0])
ax5 = plt.subplot(gs[-1,-2])
plt.tight_layout()
plt.show()
In [49]:
# method 3:easy to define structure
# 共享x轴和y轴
# 改title啥的就用f改即可
# 可以在图上很明显的看到共享x轴和共享y轴的效果
f,((ax11,ax12),(ax21,ax22))=plt.subplots(2,2,sharex=True,sharey=True)
ax11.scatter([1,2],[2,1])
plt.tight_layout()
plt.show()