Matplotlib是用于数据可视化的最流行的Python包之一。 它是一个跨平台库,用于根据数组中的数据制做2D图。 它提供了一个面向对象的API,有助于使用Python GUI工具包(如PyQt,WxPythonotTkinter)在应用程序中嵌入绘图。 它也能够用于Python和IPython shell,Jupyter笔记本和Web应用程序服务器。html
面向读者
本教程专为但愿得到数据可视化基础知识的学员而设计。shell
前提条件
Matplotlib是用Python编写的,它使用了Python的数值数学扩展NumPy。 咱们假设本教程的读者具备Python的基本知识。express
问题反馈
咱们不能保证您在此Matplotlib教程中不会遇到任何问题。本教程中的讲解,示例和代码等只是根据做者的理解来归纳写出。因为做者水平和能力有限,所以不能保证全部的编写文章和示例均能准确无误。可是若是有遇到任何错误或问题,请反馈给咱们,咱们会及时纠正以方便后继读者阅读。编程
教程目录
本教程主要的内容以下所示 -api
- Matplotlib简介 - Matplotlib是用于数据可视化的最流行的Python包之一。 它是一个跨平台库,用于根据数组中的数据制做2D图。
- Matplotlib开发环境 - Matplotlib及其依赖包在标准Python包存储库中以wheel包的形式提供,可使用pip包管理器将Matplotlib安装在Windows,Linux以及MacOS系统上。
- Matplotlib Anaconda开发工具 - Anaconda是Python和R编程语言的免费开源发行版,用于大规模数据处理,预测分析和科学计算。
- Matplotlib Jupyter笔记本 - Jupyter是一个松散的缩写,意思是Julia,Python和R.这些编程语言是Jupyter应用程序的第一个目标语言,可是如今,Jupyter技术还支持许多其余语言。
- Matplotlib Pyplot API - matplotlib.pyplot是命令样式函数的集合,使Matplotlib像MATLAB同样工做。每一个Pyplot功能都会对图形进行一些更改。
- Matplotlib简单画图 - 在Matplotlib中显示一个简单的角度线图,以弧度为单位,与正弦值相对应。
- Matplotlib pylab模块 - PyLab是一个很是方便模块,能够在单个名称空间中批量导入matplotlib.pyplot(用于绘图)和NumPy(用于数学和使用数组)。
- Matplotlib面向对象接口 - 在面向对象的界面中,Pyplot仅用于一些功能,如图形建立,用户显式建立和跟踪图形和轴对象。在此级别,用户使用Pyplot建立图形,经过这些图形,能够建立一个或多个轴对象。
- Matplotlib Figure类 - matplotlib.figure模块包含Figure类。它是全部plot元素的顶级容器。
- Matplotlib Axes类 - Axes对象是具备数据空间的图像区域。给定的图形能够包含许多轴,但给定的Axes对象只能在一个图中。轴包含两个(或在3D状况下为三个)Axis对象。
- Matplotlib Multiplots - 在本章中将学习如何在同一画布上建立多个子图。
subplot()函数返回给定网格位置的axes对象。
- Matplotlib subplots()函数 - Matplotlib的pyplot API有一个称为subplots()的便捷函数,它充当实用程序包装器,并在单个调用中帮助建立子图的公共布局,包括封闭的图形对象。
- Matplotlib subplot2grid()函数 - Matplotlib subplot2grid()函数在网格的特定位置建立轴对象提供了更大的灵活性。它还容许轴对象跨越多个行或列。
- Matplotlib网格 - axes对象的grid()函数将图中网格的可见性设置为on或off。还能够显示网格的主要/次要(或二者)刻度。
- Matplotlib格式化轴 - 轴的比例须要设置为对数(log)而不是正常比例。这是对数标度。在Matplotlib中,能够经过将axes对象的xscale或vscale属性设置为log。
- Matplotlib设置限制 - Matplotlib自动到达要沿着图的x,y(以及3D图的状况下为z轴)轴显示的变量的最小值和最大值。可是,可使用set_xlim()和set_ylim()函数显式设置限制。
- Matplotlib设置刻度和刻度标签 - 刻度是表示轴上数据点的标记。到目前为止,Matplotlib在咱们以前的全部例子中都自动接管了轴上间隔点的任务。
- Matplotlib双轴 - 当绘制具备不一样单位的曲线时。 Matplotlib经过twinx()和twiny()函数支持此功能。
- Matplotlib条形图 - 条形图或条形图是一种图表或图形,它显示带有矩形条的分类数据,其高度或长度与它们所表明的值成比例。能够垂直或水平绘制条形。
- Matplotlib直方图 - 直方图是数值数据分布的精确表示。它是连续变量的几率分布的估计,它是一种条形图。
- Matplotlib饼图 - 饼图只能显示一系列数据。饼图在一个数据系列中显示项目的大小(称为楔形),与项目的总和成比例。饼图中的数据点显示为整个饼图的百分比。
- Matplotlib散点图 - 散点图用于绘制水平轴和垂直轴上的数据点,以试图显示一个变量受另外一个变量影响的程度。数据表中的每一行都由一个标记表示,该位置取决于其在X和Y轴上设置的列中的值。
- Matplotlib轮廓图 - 轮廓图(有时称为“水平图”)是一种在二维平面上显示三维表面的方法。 它绘制了y轴上的两个预测变量X Y和轮廓的响应变量Z。 这些轮廓有时称为z切片或等响应值。
- Matplotlib二维箭头图 - 箭头图将速度矢量显示为箭头,其中份量(u,v)位于点(x,y)。
- Matplotlib箱线图 - 箱形图也称为须状图,显示包含最小值,第一四分位数,中位数,第三四分位数和最大值的一组数据的摘要。在方块图中,绘制从第一个四分位数到第三个四分位数的方框。垂直线穿过中间的框。须状从每一个四分位数到最小值或最大值。
- Matplotlib提琴图 - 小提琴图相似于箱形图,除了它们还显示不一样值的数据的几率密度。这些图包括数据中位数的标记和表示四分位数范围的框,如标准框图中所示。
- Matplotlib三维绘图 - Matplotlib最初设计时只考虑了二维绘图,可是在后来的版本中,Matplotlib的二维显示器上构建了一些三维绘图实用程序,以提供一组三维数据可视化工具。
28.Matplotlib 3D轮廓图 - ax.contour3D()函数建立三维等高线图。它要求全部输入数据采用二维规则网格的形式,并在每一个点评估Z数据。
- Matplotlib 3D线框图 - 线框图采用值网格并将其投影到指定的三维表面上,而且可使获得的三维形式很是容易可视化。
- Matplotlib 3D曲面图 - 曲面图显示指定的因变量(Y)和两个独立变量(X和Z)之间的函数关系。该图是等高线图的伴随图。曲面图相似于线框图,但线框的每一个面都是填充多边形。
- Matplotlib使用文本 - Matplotlib具备普遍的文本支持,包括对数学表达式的支持,对光栅和矢量输出的TrueType支持,具备任意旋转的换行符分隔文本以及unicode支持。
- Matplotlib数学表达式 - 将任何Matplotlib文本字符串中的子集TeXmarkup放在一对美圆符号($)中
- Matplotlib使用图像 - Matplotlib包中的图像模块提供加载,从新缩放和显示图像所需的功能,Pillow库支持加载图像数据。Matplotlib仅支持PNG图像。
- Matplotlib变换 - matplotlib包构建在转换框架之上,能够在坐标系之间轻松移动。可使用四个坐标系。