三剑客——figure-subplot-axes

之前搞数据分析的时候会经常涉及到几个概念,如标题所示,有点小懵,今天简单搞一下……

import numpy as np
import matplotlib.pyplot as plt
#在fig中生成两个子图ax1和ax2
fig=plt.figure()
ax1=fig.add_subplot(221)  #两行两列的子图矩阵的第一个位置(从左到右从上到下数)
ax2=fig.add_subplot(224)  #两行两列的子图矩阵的第四个位置
ax1.set(xlim=[0.1,1.2],ylim=[1.4,6],title='NO.1-subplot',ylabel='y1-axis',xlabel='x1-axis')  #设置子图的属性,包括xy轴的范围和标题
ax2.set(xlim=[0.5,1.5],ylim=[100,300],title='NO.2-subplot',ylabel='y2-axis',xlabel='x2-axis')
#在fig1中生成四个子图ax3~ax6
fig1=plt.figure()
ax3=fig1.add_axes([0.2,0.2,1,1])  #添加轴域前两个参数为原点坐标(左下角坐标),后两个参数为xy轴的长度
ax4=fig1.add_axes([0.4,0.4,1,1])
ax5=fig1.add_axes([0.6,0.6,1,1])
ax6=fig1.add_axes([0.8,0.8,1,1])
#显示所有子图
plt.show()

看下效果:

第一个figure分成了两行两列四块,我们分别在第一块和第四块中进行画图;第二个figure包括四个轴域,通过设定坐标原点形成了层叠的效果。

figure就相当于一个画板,我们要作图的画纸就是subplot/axes,其中subplot意为子图,axes意为轴域,这两个概念差不多,后者相较于前者更加灵活,大家从图中也能看出,二者都是一个可以画图的轴域,也就是一个子图,即xy轴形成的区域。

猜你喜欢

转载自blog.csdn.net/u014483914/article/details/79952941
今日推荐