plt subplots()函数详解及用法指南
matplotlib.pyplot.subplots()用于一次性创建并返回所有的子图和其 axe 对象。
nrows:图表的行数,默认为 1
ncols:图表的列数,默认为 1
sharex、sharey:设置 x、y 轴共享属性,默认为 False,可设置为‘True’。 False即 每个子图的 x 轴或 y 轴独立;True 即所有子图共享 x 轴或 y 轴
subplot_kw:向每个子图传递一个字典,这个字典包含了创建子图时想要应用的额外关键字参数
gridspec_kw:调整子图之间的水平间距、垂直间距等布局相关的选项。
绘制四个基本图来更直观的感受以下
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
x1 = np.linspace(0,100,400)
x2 = np.linspace(0,50,400)
y11 = 2*x1
y12=x1**2
y21=2/x2
y22=np.sin(x2)
f, ([ax1, ax2], [ax3, ax4]) = plt.subplots(2, 2)
ax1.plot(x1, y11)
ax1.set_title('11')
ax2.plot(x1, y12)
ax2.set_title('12')
ax3.plot(x2, y21)
ax3.set_title('21')
ax4.plot(x2, y22)
ax4.set_title('22')
plt.show()
share
更改sharex=True,可以看到第二行的x轴范围扩大到与第一行相同
subplot_kw
增加subplot_kw={'facecolor': 'grey'},可以看到子图背景(facecolor)更换为灰色
gridspec_kw
增加gridspec_kw={'hspace': 1, 'wspace': 1},可以看到子图间距变大
作者:01_6