一、Matplotlib 可视化常用函数
1. 导入库
通常对库名进行重定义,便于引用。
import matplotlib.pyplot as plt
2. plt.grid(*args):绘制网格函数
具体参数如下:
- visible {bool}:表示是否显示网格,值为 False 或 True。
- alpha {float}:表示网格线的可视化程度,取值 0~1。例如 alpha=0.3 表示网格线 30% 的可见度。
- which:网格类型,'major'(主网格)、'minor'(次网格)、'both',默认是 'major'。
- axis:表示沿着哪一个轴的网格线,default='both'(x 轴和 y 轴都有)。
- linewidth:网格线的宽度。
- linestyle:网格线形式。
其中最重要的参数是 visible 和 alpha。
Demo:
plt.grid(
visible=True,
which='major',
axis='both',
alpha=0.3,
color='gray',
linestyle='--',
linewidth=0.5
)
3. plt.figure(*args) 函数的注意事项
通常 plt.figure(10, 5) 用于桌面图片显示。最常用。
- 参数 1:figure_width,单位是 inch(英寸)。
- 参数 2:figure_height,单位是 inch。
4. plt.tight_layout()
为了确保布局更加紧凑美观,在 plt.show() 之前添加一个 plt.tight_layout() 函数,确保布局紧凑。
5. 面向对象编程的思路
在 Matplotlib 中,最常使用的绘图方式是面向对象编程。将整个图片 Figure 和每一个具体的绘图区域 Axes 视为操作对象,调用具体函数更简单,可读性强。可以将关于整个图片 Figure 的属性(如 bbox、figsize、DPI、figure_path 等)与关于每个具体绘图区域 Axes 的属性(如 xlabel、title、legend、linestyle、linecolor 等)分开。通常自定义调参时主要针对 Axes 的参数。
6. plt.subplot(*args)
明确 Figure 和 Axes 两个参数之后,介绍最常用的绘图方式,尤其是一个 Figure 里边有很多个子图。具体格式如下:
fig, axes = plt.subplots(m, n)
当然,subplot 函数还有很多参数,比如 constrained_layout {bool}。这个参数很重要,中文是'受限布局',可以对布局进行限制,使其更加规范,防止重叠现象。有点像 plt.tight_layout(),但是二者不一样。
具体使用的 Demo:
import matplotlib.pyplot as plt
import numpy as np
matplotlib
matplotlib.use()
plt.style.use()
plt.rcParams[] = []
plt.rcParams[] =
fig1, axes1 = plt.subplots(, , figsize=(, ))
i ():
j ():
axes1[i, j].plot(np.random.rand())
axes1[i, j].set_title( * )
axes1[i, j].set_xlabel()
axes1[i, j].set_ylabel()
fig1.suptitle(, fontsize=)
plt.tight_layout()
plt.show()
fig2, axes2 = plt.subplots(, , figsize=(, ), constrained_layout=)
i ():
j ():
axes2[i, j].plot(np.random.rand())
axes2[i, j].set_title( * )
axes2[i, j].set_xlabel()
axes2[i, j].set_ylabel()
fig2.suptitle(, fontsize=)
plt.tight_layout()
plt.show()

