在绘制图表的过程中,matplotlib会根据所绘图表的类型决定是否使用坐标系,或者显示哪种类型的坐标系。例如,饼图无坐标系,雷达图需使用极坐标系,折线图需使用直角坐标系等。其中,直角坐标系经常被使用。matplotlib中的直角坐标系由两条水平坐标轴,两条垂直坐标轴以及围成的绘图区域构成,以限制图形显示的区域,其左侧和下方的坐标轴经常被使用,其他坐标轴很少被使用。
坐标轴的结构相同,主要包括轴脊,刻度,其中刻度又可以细分为刻度线和刻度标签,刻度线又可以细分为主刻度线和次刻度线。坐标轴的各部分均是matplotlib类的对象:坐标轴是axis.Axis类的对象,轴脊是spines.Spine类的对象,刻度是axis.Ticker类的对象。此外,常用的x轴是一个axis.Xaxis类的对象,y轴是一个axis.Yaxis类的对象。如前所述的所有类的对象均包含于Axes类对象中,可通过Axes类的一些属性分别获取。
访问spines属性后会返回一个OrderdDict类的对象。OrderedDict类是dict的子类,它可以维护添加到字典中的键值对的顺序。
matplotlib支持向画布的任意位置添加自定义大小的坐标系统,同时显示坐标轴,而不再受规划区域的限制。pyplot模块可以使用axes()函数创建一个Axes类的对象,并将Axes类的对象添加到当前画布中。
axes(arg=None,projection=None,polar=False,aspect,frame_on,**kwargs)
arg:支持None,4-tuple中任一取值,每种