显示
1 | %matplotlib tk # 在GUI中显示 |
颜色,标记, 线形
- LineStyle 线形
- LineWidth 线宽
- Color 颜色
- Marker 标记点的形状
- Label 图例的标签
刻度, 标题, 标签和图例
- legend, 为了展示每个数据对应的图像名称和数据结构, 生成默认图例
- xlabel/ylabel, 设置x/y轴标签
- title, 设置标题
- xlim/ylim, 控制图标的范围
- xticks/yticks, 控制图标的刻度
- gca, 获取当前坐标轴信息
- spines, 设置边框
- set_color, 设置边框颜色
中文显示问题
1 | mpl.rcParams['font.sans-serif'] = ['SimHei'] |
1 | import matplotlib.pyplot as plt |
subplot子图
figure对象下边创建一个或多个subplot对象(即axes)用于绘制图像
subplot(numRows, numCols, plotNum)
1 | import matplotlib.pyplot as plt |
面向对象的形式1
2fig = plt.figure() # figure实例, 可以添加axes实例
ax = fig.add_subplot(111) # 返回axes实例, 参数1是子图的总行数, 参数2是子图的总列数, 参数3是子图的位置
1 | import matplotlib.pyplot as plt |
subplots
返回一个图像和多个子图
参数: nrows=x, ncols=x, sharex=True, sharey=False, gridspec_kw={‘height_ratios’:[2, 2, 1, 1]}
fig, ax = plt.subplots(2, 2), 参数表示子图的行数和列数, 总共2 * 2个子图, 函数返回一个fig图像和一个子图ax的array列表.
e.g.11
2
3
4
5
6
7
8
9
10
11
12
13import matplotlib.pyplot as plt
fig, axes = plt.subplots(nrows=4, ncols=1, sharex=True, sharey=False)
print(dir(fig))
fig.suptitle('test', fontsize=20)
axes[0].plot(range(10), 'ro-')
axes[1].plot(range(10), 'bo-')
axes[2].plot(range(10), 'go-')
axes[3].plot(range(10), 'mo-')
plt.show()
e.g.21
2
3
4
5
6
7
8
9
10
11
12
13
14import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
fig, axes = plt.subplots(2, 2)
for i in range(2):
for j in range(2):
axes[i, j].hist(np.random.randn(100), 10, color='g', alpha=0.75)
fig.subplots_adjust(wspace=0, hspace=0)
plt.show()
图像保存文件
plt.savefit(文件名称)
matplotlib柱状图
1 | matplotlib.pyplot.bar(*args, **kwargs) |
1 | import matplotlib.pyplot as plt |
matplotlib直方图
1 | import matplotlib.pyplot as plt |
matplotlib散点图
1 | import matplotlib.pyplot as plt |