3.子图
1)缺省布局
mp.subplot(行数, 列数, 图号)
mp.subplot(2, 3, 1)
mp.subplot(231)
import matplotlib.pyplot as mp
mp.figure(facecolor='lightgray')
for i in range(2):
for j in range(3):
k = i * 3 + j + 1
# 生成2行3列的子图
mp.subplot(2, 3, k)
# 将坐标轴坐标设置为0
mp.xticks(())
mp.yticks(())
# .text 忘了是做什么的了
mp.text(0.5, 0.5, str(k), ha='center', va='center', size=36, alpha=0.5)
# 紧凑布局
mp.tight_layout()
mp.show()
2)栅格布局
import matplotlib.gridspec as mg
gs = mg.GridSpec(行数, 列数) # 栅格布局器
mp.subplot(gs[行, 列])
import matplotlib.pyplot as mp
import matplotlib.gridspec as mg
mp.figure(facecolor='lightgray')
# 栅格为3行3列
gs = mg.GridSpec(3, 3)
# 第一个子图占0行的前2列
mp.subplot(gs[0, :2])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '1', ha='center', va='center', size=36, alpha=0.5)
# 设置子图占栅格的[1: 0]
mp.subplot(gs[1:, 0])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '2', ha='center', va='center', size=36, alpha=0.5)
# 设置子图占栅格的[2, 1:]
mp.subplot(gs[2, 1:])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '3', ha='center', va='center', size=36, alpha=0.5)
# 设置子图占栅格的[:2, 2]
mp.subplot(gs[:2, 2])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '4', ha='center', va='center', size=36, alpha=0.5)
# 设置子图占栅格的[1, 1]
mp.subplot(gs[1, 1])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '5', ha='center', va='center', size=36, alpha=0.5)
mp.tight_layout()
mp.show()
3)自由布局
mp.axes(
[左下角水平坐标, 左下角垂直坐标, 宽度, 高度])
其中所有的尺寸参数都是相对比例。
import matplotlib.pyplot as mp
mp.figure(facecolor=‘lightgray’)
# 自由布局
mp.axes([0.03, 0.038, 0.94, 0.924])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '1', ha='center', va='center',
size=36, alpha=0.5)
mp.axes([0.63, 0.076, 0.31, 0.308])
mp.xticks(())
mp.yticks(())
mp.text(0.5, 0.5, '2', ha='center', va='center',
size=36, alpha=0.5)
mp.show()