之前搞数据分析的时候会经常涉及到几个概念,如标题所示,有点小懵,今天简单搞一下……
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轴形成的区域。