matplotlib——pyplot和pylab区别

想绘制函数图象,自然想到了python中强大的绘图库matplotlib。网上查询资料,说是matplotlib下的模块pyplot和pylab均可以,于是便产生疑问,这二者之间有何区别和联系?于是展开调查。

网上大部分的博客文章对这二者的解释基本千篇一律,也就是:

对Pyplot的解说:“方便快速绘图matplotlib通过pyplot模块提供了一套和MATLAB类似的绘图API,将众多绘图对象所构成的复杂结构隐藏在这套API内部。”

对pylab的解说:“matplotlib还提供了一个名为pylab的模块,其中包括了许多NumPy和pyplot模块中常用的函数,方便用户快速进行计算和绘图,十分适合在IPython交互式环境中使用。”

最根本的方法,查看pylab的源码:

可以得知,和网上概括的一样,pylab包括了许多NumPy和pyplot模块中常用的函数。

 那么,具体该如何使用呢?根据pyplot源码pyplot.py中的解释部分就可得知:

(pylab combines pyplot with numpy into a single namespace. This is convenient for interactive work, but for programming it is recommended that the namespaces be kept separate)意思就是说pylab结合了pyplot和numpy,对交互式使用来说比较方便,既可以画图又可以进行简单的计算。但是,对于一个项目来说,建议分别倒入使用,即:

import numpy as np

import matplotlib.pyplot as plt

而不是

import pylab as pl

 

附在使用matplotlib及相关模块时可能用得上的资料网址:

Matplotlib.pdf  http://matplotlib.org/Matplotlib.pdf

Python科学计算  http://hyry.dip.jp/tech/book/page/scipy/matplotlib.html

posted @ 2017-04-06 16:05  肖尒子  阅读(34112)  评论(0编辑  收藏  举报