matplotlib进阶使用(1)
一、使用面向对象思想画图
虽然使用matplotlib.pyplot模块很容易快速生成绘图,但建议使用面向对象的方法,因为它可以更好地控制和自定义绘图,并且matplotlib.axes.Axes类中也提供了大多数函数
使用更正式的面向对象方法背后的主要思想是创建图形对象,然后只调用该对象的方法或属性,这种方法有助于更好地处理其上有多个绘图的画布
在面向对象的界面中,pyplot仅用于一些功能,如图形创建,用户显式创建和跟踪图形和轴对象。在此级别,用户使用pyplot创建图形,通过这些图形,可以创建一个或多个轴对象。然后,这些轴对象用于大多数绘图操作
Figure类
matplotlib.figure模块包含Figure类,它是所有plot元素的顶级容器,通过从pyplot模块调用figure()函数来实例化Figure对象
Axes类
Axes对象是具有数据空间的图像区域。给定的图形可以包含许多轴,但给定的Axes对象只能在一个图中。轴包含两个(或在3D情况下为三个)Axes对象。Axes类及其成员函数是使用OOP接口的主要入口点
figure对象通过调用add_axes()方法将Axes对象添加到图中。它返回轴对象并在位置rect [left,bottom,width,height]添加一个轴,其中所有数量都是图形宽度和高度的分数
add_axes()的参数是4个长度序列的**[左,底,宽,高]**数量。轴类的以下成员函数为图添加了不同的元素