0%

Matplotlib 模块常用内容

Matplotlib 是一个Python 2D绘图库,Python 中经常用它来实现数据可视化,在此整理常用内容。

内容摘自官方文档菜鸟驿站莫烦Python

matplotlib.pyplot 是使 Matplotlib 像 MATLAB 一样工作的命令样式函数的集合,最为常用,一般用如下形式导入:

1
import matplotlib.pyplot as plt

注意:

pyplot API通常不如面向对象的API灵活。您在此处看到的大多数函数调用也可以被称为Axes对象的方法。我们建议浏览教程和示例以了解其工作原理。

基本用法

1
2
3
4
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
sphx_glr_pyplot_001

可以看到,当向 plot() 传入一个向量时,默认这个向量中是 y 的值,而由于 Python 中下标从 0 开始,故 y 轴是从 0 开始的。

plot()是一个通用命令,它将接受任意数量的参数。例如,要绘制x与y的关系,可以发出以下命令:

1
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
sphx_glr_pyplot_002

格式化绘图样式

对于每对x,y参数,都有一个可选的第三个参数,它是表示图的颜色和线条类型的格式字符串。默认格式字符串是“ b-”,这是一条蓝色实线。例如,要用红色圆圈绘制以上内容,您将发出

1
2
3
plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
sphx_glr_pyplot_003

通常,您将使用 numpy 数组。下面的示例说明了在一个命令中使用数组绘制多行具有不同格式样式的线条的情况。

1
2
3
4
5
6
7
8
import numpy as np

# evenly sampled time at 200ms intervals
t = np.arange(0., 5., 0.2)

# red dashes, blue squares and green triangles
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
plt.show()
sphx_glr_pyplot_004

可以使用的格式化字符有:

字符 描述
'-' 实线样式
'--' 短横线样式
'-.' 点划线样式
':' 虚线样式
'.' 点标记
',' 像素标记
'o' 圆标记
'v' 倒三角标记
'^' 正三角标记
'<' 左三角标记
'>' 右三角标记
'1' 下箭头标记
'2' 上箭头标记
'3' 左箭头标记
'4' 右箭头标记
's' 正方形标记
'p' 五边形标记
'*' 星形标记
'h' 六边形标记 1
'H' 六边形标记 2
'+' 加号标记
'x' X 标记
'D' 菱形标记
'd' 窄菱形标记
`’ ‘`
'_' 水平线标记

以下是颜色的缩写:

字符 颜色
'b' 蓝色
'g' 绿色
'r' 红色
'c' 青色
'm' 品红色
'y' 黄色
'k' 黑色
'w' 白色

plt.imshow