介绍
Matplotlib是一个Python 2D绘图库,可用于绘制静态、动态、交互式的图表,应用场景十分广泛,可以说是Python数据可视化库中的泰斗。
Matplotlib的「图像」指的是用户界面看到的整个窗口内容,画在figure(如windows,jupyter窗体)上,每一个figure又包含了一个或多个axes(一个可以指定坐标系的子区域)。
Matplotlib图形组成
-
Figure
:指整个画布,包含了所有的元素 -
Axes
:指图像的实际区域,容纳了大量元素用来构造一幅幅子图 -
Axis
:用于处理与坐标系(垂直轴和水平轴)有关的元素 -
Tick
:用来处理与刻度有关的元素
通用绘图模板
1. OO模式(object-oriented style): 通过显式创建figure和axes,调用绘图方法进行绘制。
# 导入包
import matplotlib.pylot as plt
import matplotlib as mpl
import numpy as np
# 1. 准备数据
x = np.linspace(0, 2, 100)
y = 2*x
# 2. 设置绘图样式(非必要)
mpl.rc('lines', linewidth=4, linestyle='-.')
# 3. 定义布局
fig, ax = plt.subplots()
# 4. 绘制图像
ax.plot(x, y, label='linear')
# 5. 添加标签、文字和图例
ax.set_xlabel('x label')
ax.set_ylabel('y label')
ax.set_title("Plot")
ax.legend()
plt.show()
2. pyplot绘图模式: 通过pyplot隐式(自动)创建figure和axes,调用绘图方法进行绘制。
# 导入包
import matplotlib.pylot as plt
import matplotlib as mpl
import numpy as np
# 1. 准备数据
x = np.linspace(0, 2, 100)
y = 2*x
# 2. 设置绘图样式(非必要)
mpl.rc('lines', linewidth=4, linestyle='-.')
# 3. 绘制图像
plt.plot(x, y, label='linear')
# 4. 添加标签、文字和图例
plt.xlabel('x label')
plt.ylabel('y label')
plt.title("Plot")
plt.legend()
plt.show()