1、作业要求如图所示
figseze:调节图形尺寸
width_ratios:定义列的相对宽度。每列都得到一个 的相对宽度。 如果未给出,则所有列将具有相同的宽度。
height_ratios:定义行的相对高度。每行得到一个 的相对高度。 如果未给出,则所有行将具有相同的高度
tight_layout:用于调整子图参数的例程,以便子图是 很好地贴合身材。在这样做时,只有轴标签、刻度标签、轴 当前考虑锚定到轴的标题和偏移框。
projection:设置极坐标
Matplotlib.gridspec.GridSpec(nrows, ncols, figure=None, left=None, bottom=None, right=None, top=None, wspace=None, hspace=None, width_ratios=None, height_ratios=None)
nrows:表示行数
ncol:表示列数
figure:表示布局的画布
left,bottom,right,top:表示子图的范围
wspace:表示子图之间预留的宽度量
hspace:表示子图之间预留的高度量
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
import numpy as np
# 创建画布实例
fig = plt.figure(figsize=(8, 8))
# 创建区域规划图实例
spec = gridspec.GridSpec(ncols=3, nrows=3, figure=fig)
# 在指定位置创建对应的坐标系实例
ax1 = fig.add_subplot(spec[0, :])
ax2 = fig.add_subplot(spec[1, :2])
ax3 = fig.add_subplot(spec[1, 2])
ax4 = fig.add_subplot(spec[2, 0], projection='polar')
ax5 = fig.add_subplot(spec[2, 1:])
plt.tight_layout() # 调整子图之间的间距和尺寸,使它们更好地适应画布
plt.show()
3、图片展示