matplotlib是Python中重要的绘图库。
模块
在matplotlib中,涉及的主要模块有pyplot,pylab,figure,axes等。
pylab介绍
其中pylab是Python中对MATLAB的替代产品,其集合了numpy和matplotlib.pyplot两者的功能,是一定意义上的集大成者,但也因此过于复杂,而不建议使用。
pyplot介绍
pyplot是matplotlib的核心绘图模块,作为matplotlib的三大接口,其可以调用matplotlib中的大部分模块。
值得一提的是,pyplot虽然是matplotlib下的子模块,但其调用关系却是在pyplot中调用matplotlib。
重点: 个人在学习matplotlib时,最大的疑惑点是,import matplotlib.pyplot as plt仅仅调用了pyplot模块,但在实际绘图时,却可以使用包括figure,axes在内的大多数模块。
个人理解:由于pyplot与matplotlib的调用关系是在pyplot中调用matplotlib。因此pyplot模块不仅包含了指向pyplot库本身的接口,也包含了其他大多数库的接口,即导入pyplot库以后,就可以直接调用figure和axes在内的其他模块。
figuer介绍
是为所有绘图操作定义了最初对象(画布)。所有的绘图操作都将在此对象上进行操作。
axes介绍
axes定义了画布中的一个坐标系(也被称为子图)。该坐标系可以视为是一个容器,我们可以在其中定义各种我们需要的图像。
(注意和axis的区别。axis是坐标轴,可以定义刻度,坐标轴名称等属性)
matplotlib的三大接口
所谓接口,即用户对于图形操作方法的选择。在matplotlib中操作图形的函数,方法有很多,但可以划分为三类,即对应matplotlib的三大接口。
pyplot接口
针对当前图像进行操作,使用起来简单快捷,但对于复杂图表,具有众多子图的图像,处理起来比较困难。
import matplotlib.pyplot as plt