这些教程涵盖了使用 Matplotlib 创建可视化的基础知识,以及有效使用包的一些最佳实践。
Matplotlib 有大量的代码库,可能会让许多新用户却步,然而 Matplotlib 的大部分内容只需要一个相当简单的概念框架和一些重要的知识点就可以理解。
绘图需要在一定范围的层次上进行操作,从最一般的层次(contour this 2-D array )到最具体的层次(color this screen pixel red )。绘图包的目的是通过所有必要的控制。即:大部分时间使用相对高级的命令,并且在需要时仍然能使用低级命令—帮助尽可能容易地完成可视化数据。
因此 Matplotlib 中的所有内容都被组织在一个层次结构中,位于层次结构顶部的是 Matplotlib “状态机环境”,由 Matplotlib.pyplot 模块提供。在这个级别上使用简单的函数向当前图形的当前轴添加绘图元素(线条、图像、文本等)。
Pyplot 的状态机环境的行为类似于 MATLAB,对于具有 MATLAB 经验的用户来说应该是最熟悉的。
层次结构的下一个级别是面向对象接口的第一个级别,其中 pyplot 仅用于图形创建等少数函数,用户显示创建并跟踪图形和轴对象。在这个级别上用户使用 pyplot 创建图形,并通过这些图形创建一个或多个轴对象,然后这些轴对象用于大多数绘图操作。
Parts of a Figure(图中的部件):
Figure(图):
完整的一个图。该图保留追踪到的所有子 轴域 、一些 Matplotlib 中特有的 Artist(艺术家对象。如:标题,角色说明等)和 canvas 。(不要过于担心 canvas ,这一点非常重要,虽然实际上是这个对象绘制出了你的图,但是作为用户来说或多或少是不可见的)。一个图形可以有任意数量的 轴域 ,但为了有用,至少应该有一个 轴域 。
创建一个新图形最简单的方法是用 pyplot:
importmatplotlib.pyplot asplt;
fig = plt.figure() # an empty figure with no axes
fig.suptitle(\'No axes on this figure\') # Add a title so we know which it is
fig, ax_lst = plt.subplots(2, 2) # a figure with a 2x2 grid of Axes
plt.show();
Axes(轴域):