2020-4-9 Matplotlib如何在同一个图上显示多个子图

题记

上Python数据分析课的时候,作业中有要将多个子图放在一个图中,如何来操作呢?

正文

1、subplot
直接指定划分方式和位置进行绘图

t=np.arange(0.0,2.0,0.1)
s=np.sin(t*np.pi)
plt.subplot(2,2,1) #要生成两行两列,这是第一个图plt.subplot('行','列','编号')
plt.plot(t,s,'b--')
plt.ylabel('y1')
plt.subplot(2,2,2) #两行两列,这是第二个图
plt.plot(2*t,s,'r--')
plt.ylabel('y2')
plt.subplot(2,2,3)#两行两列,这是第三个图
plt.plot(3*t,s,'m--')
plt.subplot(2,2,4)#两行两列,这是第四个图
plt.plot(4*t,s,'k--')
plt.show()

如图
2020-4-9 Matplotlib如何在同一个图上显示多个子图_第1张图片

2、subplots
事先分割画板

t=np.arange(0.0,2.0,0.1)
s=np.sin(t*np.pi)
figure,ax=plt.subplots(2,2)
ax[0][0].plot(t,s,'r*')
ax[0][1].plot(t*2,s,'b--')
figure

这里的的ax是matplotlib.axes._subplots.AxesSubplot 这个类型的,我们可以理解为这是一个子plot,我们在这上面操作它把图像画到figure上面去。我们直接根据列表的下标指定画图的位置。最后显示figure即可。

以上笔记均来自网络收纳,仅供学习。

你可能感兴趣的:(笔记)