全站搜索未启用
跳到主要内容

9.3.1 Matplotlib 介绍

Matplotlib是一个Python 2D绘图库,可以生成各种拷贝格式,实现跨平台交互式环境的匹配、不同出版物格式的匹配、不同质量数据的要求匹配。Matplotlib可用于Python脚本和IPython shell、Jupyter Notebook、Web应用程序服务器等不同的图形用户界面工具包。

Matplotlib试图让事情变得简单易懂。你只需几行代码即可生成绘图,如直方图、功率谱、条形图、误差图、散点图等。

9.3.2 Matplotlib安装

在Windows 操作系统下安装 Matplotlib时,首先进入 cmd 窗口下,执行以下命令:

python -m pip install -U pip setuptools

python -m pip install matplotlib

在Linux 操作系统下安装 Matplotlib时,可以使用 Linux 包管理器来安装:

Debian / Ubuntu:

sudo apt-get install python-matplotlib

Fedora / Redhat:

sudo yum install python-matplotlib

在Mac OSX 操作系统下安装 Matplotlib时, 可以使用 pip 命令来安装:

sudo python -mpip install matplotlib

9.3.3 Matplotlib指南
1. 绘制函数的输入类型

所有绘图函数都需要以np.array或np.ma.masked_array输入。

2. Matplotlib、pyplot和pylab之间的关系

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

9.3.4 Pyplot 指南
1. Pyplot 简介

matplotlib.pyplot 是命令样式函数的集合,它使matplotlib像MATLAB一样工作。 每个pyplot函数都可对图形进行一些更改,如创建图形、在图形中创建绘图区域、在绘图区域中绘制一些线条、用标签装饰图形等。

2.格式化绘图的样式

对于每个(xy)参数对,有一个可选的第三个参数,用于指示绘图的颜色和线型的格式字符串。格式字符串的字母和符号来自MATLAB,可以将颜色字符串与线型字符串连接起来。

3. 设置线的属性

线可以设置许多属性,如linewidth、dash style、antialiased等。

(1)使用关键字args。

(2)使用Line2D实例的setter方法。

(3)使用 setp() 命令。

4. 使用多个图形和轴

MATLAB和pyplot,都有当前图形和当前轴的概念。所有打印命令都适用于当前轴。函数gca() 返回当前轴(matplotlib.axes.Axes实例),函数gcf() 返回当前图(matplotlib.figure.Figure实例)。

9.3.5 Matplotlib打印图像
1. 启动方式

IPython是对标准Python最佳的交互模式,它与Matplotlib有着很好的兼容性。

随着IPython的启动,我们需要连接到GUI事件循环。这告诉IPython在哪里(和如何)显示图像。

2. 将图像数据导入Numpy数组

Pillow(枕形)库支持加载图像数据。

Matplotlib已将每个通道的8位数据重新缩放为0.0~1.0的浮点数据。另外,Pillow可以使用的唯一数据类型是uint8。Matplotlib绘图可以处理Float32和uint8数据类型,但PNG以外的任何格式的图像读/写仅限于uint8数据。之所以是8位,是因为大多数显示器只能渲染每通道8位的颜色渐变。人眼所能看到的多为每通道8位的显示模式。

3.将数字数组绘制为图像

将数据放在一个numpy数组中(通过导入或生成)。接下来我们可以开始渲染操作。在Matplotlib中,这是使用imshow()函数执行的。在这里,我们将获取调用绘图对象。

4. 将伪彩色方案应用于图像图

伪色彩(pseudocolor)可以成为增强对比度和使可视化数据更容易的有用工具。这在使用投影仪进行数据演示时尤其有用,投影仪的对比度通常非常差。

9.3.6 Plot的生命周期

Matplotlib有两个接口。第一个是面向对象(OO)接口。在这种情况下,我们利用 axes.Axes 的实例,以便在figure.Figure的实例上呈现可视化。第二个是基于MATLAB并使用基于状态的接口。该接口封装在pyplot模块中。

最后修改: 2020年02月4日 Tuesday 17:09