196

matplotlib.pyplot 和 matplotlib.pylab 有什么区别?

哪个是首选?

我有点困惑,因为它似乎独立于我的导入,我可以做同样的事情。我错过了什么?

4

1 回答 1

162

该措辞不再出现在文档中。

现在不鼓励使用pylab导入,并且建议将 OO 接口用于大多数非交互式使用。


文档中,重点是我的:

Matplotlib 是整个包;pylab 是 matplotlib 中的一个模块,它与matplotlib一起安装;matplotlib.pyplot是 matplotlib 中的一个模块。

Pyplot 为 matplotlib 中的底层绘图库提供状态机接口。这意味着图形和轴是隐式自动创建的,以实现所需的绘图。例如,从 pyplot 调用 plot 将自动创建必要的图形和轴以实现所需的绘图。设置标题会自动将该标题设置为当前坐标区对象:

Pylab 将 pyplot 功能(用于绘图)与 numpy 功能(用于数学和处理数组)结合在一个命名空间中,使该命名空间(或环境)更加类似于 MATLAB。例如,可以像在 MATLAB 中一样调用 sin 和 cos 函数,并且具有 pyplot 的所有功能。

pyplot界面通常首选用于非交互式绘图(即脚本)。pylab界面便于交互式计算和绘图,因为它最大限度地减少了打字。请注意,如果您将 ipython shell 与 -pylab 选项一起使用,这就是您得到的结果,该选项从 pylab 导入所有内容并使绘图完全交互。

于 2012-07-13T13:47:18.670 回答