Python Matplotlib绘图

249 人学过

Matplotlib 是用于数据可视化的最流行的 Python 包之一。它是一个跨平台库,用于将数组中的数据绘制成二维图形。在本实验中,我们将使用Matplotlib绘制简单的图形。

课程内容
共27个章节 27个实验
1 简单绘图

Matplotlib 是用于数据可视化的最流行的 Python 包之一。它是一个跨平台库,用于将数组中的数据绘制成二维图形。在本实验中,我们将使用Matplotlib绘制简单的图形。

实验1 实验1:简单绘图
Matplotlib 是用于数据可视化的最流行的 Python 包之一。它是一个跨平台库,用于将数组中的数据绘制成二维图形。在本实验中,我们将使用Matplotlib绘制简单的图形。
2 Matplotlib - PyLab 模块

PyLab 是一个方便的模块,它在单个名称空间中批量导入 matplotlib.pyplot(用于绘图)和 NumPy(用于数学和处理数组)。本实验简要介绍使用PyLab绘制基本图形、其它样式线条的图形和将多个图形绘制在同一张图上。

实验1 实验2:Matplotlib - PyLab 模块
PyLab 是 Matplotlib 面向对象绘图库的程序接口。Matplotlib 是整个包;matplotlib.pyplot 是 Matplotlib 中的一个模块;PyLab 是一个与 Matplotlib 一起安装的模块。
PyLab 是一个方便的模块,它在单个名称空间中批量导入了 matplotlib.pyplot(用于绘图)和 NumPy(用于数学和处理数组)。

3 面向对象接口

虽然使用matplotlib.pyplot模块很容易快速生成绘图,但建议使用面向对象的方法,因为它可以更好地控制和定制自己想要画的图形。大多数函数也可以在 matplotlib.axes.Axes类中找到。使用更正式的面向对象方法背后的主要思想是创建图形对象,然后只调用该对象的方法或属性。这种方法有助于更好地处理具有多个绘图的画布。在面向对象的界面中,Pyplot 仅用于图形创建等少数功能,用户显式创建并跟踪图形和轴对象。用户使用 Pyplot 创建图形,通过这些图形,可以创建一个或多个轴对象。这些轴对象用于大多数绘图操作。

实验1 实验3:面向对象接口
虽然使用matplotlib.pyplot模块很容易快速生成绘图,但建议使用面向对象的方法,因为它可以更好地控制和定制自己想要画的图形。大多数函数也可以在 matplotlib.axes.Axes类中找到。
4 图类与轴类

matplotlib.figure模块包含图类。它是所有绘图元素的顶级容器。Figure 对象通过从 pyplot 模块调用figure()函数来实例化。Axes 对象是具有数据空间的图像区域。一个给定的图形可以包含多个 Axes,但一个给定的 Axes 对象只能在一个 Figure 中。Axes 包含两个(在 3D 情况下为三个)轴对象。Axes 类及其成员函数是使用 OO 接口的主要入口点。

实验1 实验4:图类与轴类
matplotlib.figure模块包含图类。它是所有绘图元素的顶级容器。Figure 对象通过从 pyplot 模块调用figure()函数来实例化。Axes 对象是具有数据空间的图像区域。一个给定的图形可以包含多个 Axes,但一个给定的 Axes 对象只能在一个 Figure 中。Axes 包含两个(在 3D 情况下为三个)轴对象。Axes 类及其成员函数是使用 OO 接口的主要入口点。
5 多图

在本次实验中,我们将学习如何在同一画布上创建多个子图。

实验1 实验5:多图
在本次实验中,我们将学习如何在同一画布上创建多个子图。
6 Subplots() 函数

本实验主要介绍Matplotlib 的 pyplot API 中一个名为 subplots() 的函数。

实验1 实验6:Subplots() 函数
Matplotlib 的 spyplot API 有一个名为 subplots() 的函数,它充当实用程序包装器,有助于在一次调用中创建子图的通用布局,包括封闭的图形对象。
7 Subplot2grid() 函数

本实验主要介绍Matplotlib 的 spyplot API 中一个名为 Subplot2grid()的函数。

实验1 实验7:Subplot2grid() 函数
本实验主要介绍Matplotlib 的 spyplot API 中一个名为 Subplot2grid()的函数。
8 网格

本实验主要介绍Axes轴对象的 grid()方法

实验1 实验8: 网格
轴对象的 grid()方法可将图形内部网格的可见性设置为打开或关闭。您还可以显示网格的主要/次要(或两者)刻度。此外,可以在 grid() 方法中设置颜色、线型和线宽属性。
9 格式化轴

本实验主要介绍格式化轴

实验1 实验9:格式化轴
本实验主要介绍格式化轴
10 设置限制

本实验主要介绍设置轴的界限

实验1 实验10:设置限制
使用set_xlim()和set_ylim()方法显式设置轴变量的上下界。
11 设置刻度和刻度标签

本实验主要介绍设置刻度和刻度标签。

实验1 实验11:设置刻度和刻度标签
刻度是表示轴上数据点的标记。到目前为止,在我们之前的所有示例中,Matplotlib 自动在轴上设置间隔点。Matplotlib 的默认刻度定位器和格式化程序在许多常见情况下通常是足够使用的了。当然,也可以明确设置刻度的位置和标签以满足特定要求。
12 双轴

本实验主要介绍双y轴或双x轴

实验1 实验12:双轴
在图形中具有双 x 或 y 轴被认为是有用的。此外,在绘制具有不同单位的曲线时。Matplotlib 通过 twinx 和 twiny 函数支持这一点。
13 条形图

本实验主要介绍使用bar()函数绘制条形图。

实验1 实验13:条形图
本实验主要介绍使用bar()函数绘制条形图。
14 直方图

本实验主要介绍如何绘制直方图。

实验1 实验14:直方图
本实验主要介绍如何绘制直方图。
15 饼图

本实验主要介绍如何绘制饼图。饼图只能显示一系列数据。饼图显示一个数据系列中项目(称为楔形)的大小,与项目总和成正比。饼图中的数据点显示为整个饼图的百分比。

实验1 实验15:饼图
饼图显示一个数据系列中项目(称为楔形)的大小,与项目总和成正比。饼图中的数据点显示为整个饼图的百分比。
16 散点图

本实验主要介绍如何绘制散点图。散点图用于在水平和垂直轴上绘制数据点,以尝试显示一个变量受另一个变量影响的程度。数据表中的每一行都由一个标记表示,其位置取决于其在 X 轴和 Y 轴上设置的列中的值。可以设置第三个变量以对应于标记的颜色或大小,从而为绘图添加另一个维度。

实验1 实验16:散点图
本实验主要介绍如何绘制散点图。散点图用于在水平和垂直轴上绘制数据点,以尝试显示一个变量受另一个变量影响的程度。
17 等高线图

本实验主要介绍如何绘制等高线图。等高线图(有时称为水平图)是一种在二维平面上显示三维表面的方法。它将两个自变量 X、Y 绘制在 y 轴上,将响应变量 Z 绘制为等高线。这些等高线有时称为 z 切片或等值响应值。

等高线适合用于查看 Z 如何作为两个输入变量 X 和 Y 的函数而变化,例如 Z = f(X,Y)。两个变量的函数的等高线或等值线是函数沿该等高线函数值具有恒定值的曲线。

自变量 x 和 y 通常被限制在称为 meshgrid 的规则网格中。numpy.meshgrid 从 x 值数组和 y 值数组中创建一个矩形网格。

实验1 实验17:等高线图
等高线图(有时称为水平图)是一种在二维平面上显示三维表面的方法。它将两个自变量 X、Y 绘制在 y 轴上,将响应变量 Z 绘制为等高线。这些等高线有时称为 z 切片或等值响应值。
18 箭图

本实验主要介绍matplotlib Quiver Plot箭图绘制。箭图将速度矢量显示为箭头,在点 (x,y) 处具有分量 (u,v)。
quiver(x,y,u,v)
上面的函数在 x 和 y 中每个对应元素对中指定的坐标处将向量绘制为箭头。

实验1 实验18:箭图
本实验主要介绍matplotlib Quiver Plot箭图绘制。箭图将速度矢量显示为箭头,在点 (x,y) 处具有分量 (u,v)。
19 箱线图

1.箱线图(也称为须线图)显示一组数据的摘要,其中包含最小值、第一个四分位数、中位数、第三个四分位数和最大值。在箱线图中,我们从第一个四分位数到第三个四分位数绘制一个方框。一条垂直线穿过中间的盒子。胡须从每个四分位数到最小值或最大值。

实验1 实验19:箱线图
箱线图(也称为须线图)显示一组数据的摘要,其中包含最小值、第一个四分位数、中位数、第三个四分位数和最大值。在箱线图中,我们从第一个四分位数到第三个四分位数绘制一个方框。一条垂直线穿过中间的盒子。胡须从每个四分位数到最小值或最大值。
20 小提琴图

本实验主要介绍小提琴图。小提琴图类似于箱线图,不同之处在于它们还显示了数据在不同值下的概率密度。这些图包括数据中位数的标记和指示四分位距的框,如标准箱线图所示。叠加在此箱线图上的是核密度估计。与箱线图一样,小提琴图用于表示不同“类别”之间的变量分布(或样本分布)的比较。

实验1 实验20:小提琴图
本实验主要介绍小提琴图。小提琴图类似于箱线图,不同之处在于它们还显示了数据在不同值下的概率密度。这些图包括数据中位数的标记和指示四分位距的框,如标准箱线图所示。叠加在此箱线图上的是核密度估计。与箱线图一样,小提琴图用于表示不同“类别”之间的变量分布(或样本分布)的比较。
21 三维绘图

本实验主要介绍三维绘图。尽管 Matplotlib 最初设计时只考虑了二维绘图,但在以后的版本中,在 Matplotlib 的二维显示之上构建了一些三维绘图实用程序,以提供一组用于三维数据可视化的工具。通过导入包含在 Matplotlib 包中的mplot3d 工具包来启用三维绘图。

实验1 实验21:三维绘图
本实验主要介绍三维绘图。尽管 Matplotlib 最初设计时只考虑了二维绘图,但在以后的版本中,在 Matplotlib 的二维显示之上构建了一些三维绘图实用程序,以提供一组用于三维数据可视化的工具。通过导入包含在 Matplotlib 包中的mplot3d 工具包来启用三维绘图。
22 3D等高线图

本实验主要介绍如何绘制3D等高线图。ax.contour3D()函数创建三维等高线图。它要求所有输入数据都采用二维规则网格的形式,并在每个点计算出 Z 。

实验1 实验22:3D等高线图
本实验主要介绍如何绘制3D等高线图。ax.contour3D()函数创建三维等高线图。它要求所有输入数据都采用二维规则网格的形式,并在每个点计算出 Z 。
23 3D线框图

本实验主要介绍3D线框图。线框图采用值网格并将其投影到指定的三维表面上,并且可以使生成的三维形式非常容易可视化。plot_wireframe()函数可用于绘制3D线框图。

实验1 实验23:3D线框图
本实验主要介绍3D线框图。线框图采用值网格并将其投影到指定的三维表面上,并且可以使生成的三维形式非常容易可视化。plot_wireframe()函数可用于绘制3D线框图。
24 3D曲面图

本实验主要介绍3D 曲面图。曲面图显示指定因变量 (Y) 和两个自变量(X 和 Z)之间的函数关系。该图是等高线图的配套图。曲面图类似于线框图,但线框的每个面都是填充的多边形。这可以帮助感知被可视化的表面的拓扑结构。plot_surface()函数x,y和z作为参数。

实验1 实验24:3D曲面图
本实验主要介绍3D 曲面图。曲面图显示指定因变量 (Y) 和两个自变量(X 和 Z)之间的函数关系。该图是等高线图的配套图。曲面图类似于线框图,但线框的每个面都是填充的多边形。这可以帮助感知被可视化的表面的拓扑结构。plot_surface()函数x,y和z作为参数。
25 处理文本

本实验主要介绍如何处理文本。Matplotlib 具有广泛的文本支持,包括对数学表达式的支持、对光栅和矢量输出的TrueType支持、具有任意旋转的换行符分隔文本以及 unicode 支持。Matplotlib 包括它自己的 matplotlib.font_manager,它实现了一个跨平台、符合 W3C 的字体查找算法。

实验1 实验25:处理文本
本实验主要介绍如何处理文本。Matplotlib 具有广泛的文本支持,包括对数学表达式的支持、对光栅和矢量输出的TrueType支持、具有任意旋转的换行符分隔文本以及 unicode 支持。
26 数学表达式

本实验主要介绍如何在图中使用数学表达式。在任何 Matplotlib 文本字符串中使用子集 TeXmarkup,方法是将其放置在一对美元符号 ($) 内。
# math text
plt.title(r'$\alpha > \beta$')

实验1 实验26:数学表达式
本实验主要介绍如何在图中使用数学表达式。在任何 Matplotlib 文本字符串中使用子集 TeXmarkup,方法是将其放置在一对美元符号 ($) 内。
27 处理图像

本实验主要介绍Matplotlib 的图像处理。Matplotlib 包中的图像模块提供加载、重新缩放和显示图像所需的功能。

加载图像数据的功能由Pillow库支持。所以,Matplotlib 本身只支持 PNG 图像,如果读取图像失败,下面显示的命令会回退到 Pillow。

实验1 实验27:处理图像
本实验主要介绍Matplotlib 的图像处理。Matplotlib 包中的图像模块提供加载、重新缩放和显示图像所需的功能。

加载图像数据的功能由Pillow库支持。所以,Matplotlib 本身只支持 PNG 图像,如果读取图像失败,下面显示的命令会回退到 Pillow。

Python Matplotlib绘图

共27个实验

参加本课程
Python Matplotlib 可视化