代码
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)
#method1
plt.figure("方法一")
#(3,3):整体大小
#(0,0):代表当前从0行0列开始
#colspan:横跨几列
#rowspan:横跨几行
#第一行第一个图
ax1 = plt.subplot2grid((3,3),(0,0),colspan=3,rowspan=1)
ax1.plot([1,2],[1,2])
#第二行第一个图
ax2 = plt.subplot2grid((3,3),(1,0),colspan=2,rowspan=1)
ax2.plot([1,2],[1,1])
#第三行第一个图
ax3 = plt.subplot2grid((3,3),(2,0),colspan=1,rowspan=1)
ax3.plot([1,2],[4,2])
#第三行第二个图
ax4 = plt.subplot2grid((3,3),(2,1),colspan=1,rowspan=1)
ax4.plot([1,4],[3,2])
#第二行第二个图
ax5 = plt.subplot2grid((3,3),(1,2),colspan=1,rowspan=2)
ax5.plot([1,2],[1,2])
plt.show()
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,1])
plt.show()
效果
方法一:
方法二: