Matplotlib库的介绍及使用
1. pyplot子库的基本使用
1.1 Matplotlib库的介绍
Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发。
matplotlib.pyplot是绘制各类可视化图形的命令子库,相当于快捷方式。
引入pyplot子库:
import matplotlib.pyplot as plt
- Matlablib库小测:
plt.plot()
只指定一个数组元素,表示为纵坐标的值,横坐标为该值的索引,plt.savefig()
中dpi表示每一英寸内像素点的值。
- Matlablib库小测综合:
plt.axis([-1,10,0,6])
表示横坐标的尺度为 [-1,10]
,纵坐标的尺度为 [0,6]
。
- subplot函数创建绘图区域
1.2 plot函数
plt.plot(x,y, format_string, **kwargs)
参数说明如下:
x
: X轴数据,列表或数组,可选。
y
: Y轴数据,列表或数组。
format_string
: 控制曲线的格式字符串,可选。
**kwargs
: 第二组或更多(x,y,format_string)
当绘制多条曲线时,各条曲线的x不能省略。
format_string
:控制曲线的格式字符串,可选由颜色字符、风格字符和标记字符组成。
颜色字符 | 说明 |
---|---|
‘b’ | 蓝色 |
‘g’ | 绿色 |
‘r’ | 红色 |
‘c’ | 青绿色 cyan |
‘m’ | 洋红色 magenta |
‘y’ | 黄色 |
‘k’ | 黑色 |
‘w’ | 白色 |
‘0.8’ | 灰度值字符串 |
风格字符 | 说明 |
---|---|
‘-’ | 实线 |
‘–’ | 破折线 |
‘-.’ | 点划线 |
‘:’ | 虚线 |
‘’ ’ ’ | 无线条 |
标记字符 | 说明 |
---|---|
‘.’ | 点标记 |
‘o’ | 实心圈标记 |
‘^’ | 上三角标记 |
'*' | 星形标记 |
‘+’ | 十字标记 |
‘x’ | x标记 |
综合举例:颜色字符、风格字符和标记字符组合使用
import matplotlib pyplot as plt
import numpy as np
a = np.arange(10)
plt.plot(a, a*1.5, 'go-', a, a*2.5, 'rx', a, a*3.5, '*', a, a*4.5, 'b-.')
plt.show()
通常还可以使用如下的表示方式:
color: 控制颜色,color=‘green’
linestyle: 线条风格,lingstyle=‘dashed’
marker: 标记风格,marker=‘o’
markerfacecolor: 标记颜色,markerfacecolor=‘bule’
markersize: 标记尺寸,markersize=20
1.3 pyplot的中文显示
- 使用rcParams
rcParams的属性
| 属性 | 说明 |
| ----------- | -------------------------------- |
| font.family | 用于显示字体的名字 |
| font.style | 字体风格,正常normal或斜体italic |
| font.size | 字体大小,整数字号或者large、x-small |
举例:
- 使用fontproperties(推荐,不改变全局的字体)
举例:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iI1wlIql-1671896694904)(null)]
1.4 pyplot的文本显示
用于显示文本的函数及说明如下:
使用xlabel()、ylabel()、title()、text()
函数举例如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OlGeAVdl-1671896694887)(null)]
2. pyplot基础图表函数
pyplot基础图表函数概述:
2.1 pyplot饼图的绘制
plt.pie()
绘制饼图:
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=False, startangle=90)
2.2 pyplot直方图的绘制
直方图主要应用于观察数据在取值方面的分布
plt.hist()
绘制直方图:
plt.hist(a, 40, normed=1, histtype='stepfilled', facecolor='b', alpha=0.75)
2.3 pyplot极坐标图的绘制
面向对象(plt.subplot
内的porjection=polar
)绘制极坐标图,用的不是很多。
2.4 pyplot散点图的绘制
面向对象(fig,ax=plt.subplots()
中把ax当成一个对象)绘制散点图