快速安装
pip install matplotlib
折线图
快速入门
1 | import matplotlib.pyplot as plt |
设置画布大小
我们使用plt.figure()
函数来设置画布大小,其参数如下:
- figsize : 设置画布的大小,单位英寸
- dpi : 设置清晰度
1 | import matplotlib.pyplot as plt |
保存图像
1 | plt.savefig('test.png') |
自定义x轴、y轴刻度
xticks
,yticks
使用自定义刻度的函数,它有两个参数:
- ticks:要显示x轴的刻度
- labels:给对应的x刻度设置一个标签,并且覆盖之前的刻度,与传入ticks的列表长度要相等。
x轴每隔2两个数显示
1 | import matplotlib.pyplot as plt |
x轴显示中文
matplotlib默认字体是不支持中文的需要更改,有多种方法,现在只提供一种
1 | import matplotlib.pyplot as plt |
修改matplotlib默认字体,使它支持显示中文
1 | import matplotlib.pyplot as plt |
轴标签和标题
xlabel
、ylabel
使用修改x,y轴标签
title
可修改标题
1 | import matplotlib.pyplot as plt |
添加网格线
grid
方法来设置图表中的网格线
1 | import matplotlib.pyplot as plt |
同一图中同时绘制多条折线
只是数据多准备一份罢了,基本什么区别
例外再添加上图例legend
,可读性更好
1 | import matplotlib.pyplot as plt |
同时绘制两个图
subplots
可以把整个画布分成多块
1 | plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签 |
绘制数学函数图像
1 | import matplotlib.pyplot as plt |
设置字体大小
在前面的例子中感觉显示的字体太小了,看的不舒服,现在来设置一下。
通过plt.rcParams['font.size']=18
来指定字体的大小
1 | import matplotlib.pyplot as plt |
散点图绘制
主要使用scatter
方法来绘制散点图,参数如下:
参数说明:
- x,y:长度相同的数组,也就是我们即将绘制散点图的数据点,输入数据。
- s:点的大小,默认 20,也可以是个数组,数组每个参数为对应点的大小。
- c:点的颜色,默认蓝色 ‘b’,也可以是个 RGB 或 RGBA 二维行数组。
- marker:点的样式,默认小圆圈 ‘o’。
- cmap:Colormap,默认 None,标量或者是一个 colormap 的名字,只有 c 是一个浮点数数组的时才使用。如果没有申明就是 image.cmap。
- norm:Normalize,默认 None,数据亮度在 0-1 之间,只有 c 是一个浮点数的数组的时才使用。
- vmin,vmax::亮度设置,在 norm 参数存在时会忽略。
- alpha::透明度设置,0-1 之间,默认 None,即不透明。
- linewidths::标记点的长度。
- edgecolors::颜色或颜色序列,默认为 ‘face’,可选值有 ‘face’, ‘none’, None。
- plotnonfinite::布尔值,设置是否使用非限定的 c ( inf, -inf 或 nan) 绘制点。
- **kwargs::其他参数。
1 | import matplotlib.pyplot as plt |
柱状图
主要使用 bar()
方法来绘制柱形图。
bar() 方法语法格式如下:
- x:浮点型数组,柱形图的 x 轴数据。
- height:浮点型数组,柱形图的高度。
- width:浮点型数组,柱形图的宽度。
- bottom:浮点型数组,底座的 y 坐标,默认 0。
- align:柱形图与 x 坐标的对齐方式,’center’ 以 x 位置为中心,这是默认值。 ‘edge’:将柱形图的左边缘与 x 位置对齐。要对齐右边缘的条形,可以传递负数的宽度值及 align=’edge’。
- **kwargs::其他参数。
简单使用
1 | plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签 |
多组柱状图
1 |
|
垂直水平方向的柱状图
垂直方向的柱状图可以使用barh()
方法来设置:
1 | import matplotlib.pyplot as plt |
直方图
使用hist()
方法来绘制直方图
1 | # 电影时长分布状况 |
饼图
使用 pyplot 中的 pie()
方法来绘制饼图。
参数说明:
- x:浮点型数组,表示每个扇形的面积。
- explode:数组,表示各个扇形之间的间隔,默认值为0。
- labels:列表,各个扇形的标签,默认值为 None。
- colors:数组,表示各个扇形的颜色,默认值为 None。
- autopct:设置饼图内各个扇形百分比显示格式,%d%% 整数百分比,%0.1f 一位小数, %0.1f%% 一位小数百分比, %0.2f%% 两位小数百分比。
- labeldistance:标签标记的绘制位置,相对于半径的比例,默认值为 1.1,如 <1则绘制在饼图内侧。
- pctdistance::类似于 labeldistance,指定 autopct 的位置刻度,默认值为 0.6。
- shadow::布尔值 True 或 False,设置饼图的阴影,默认为 False,不设置阴影。
- radius::设置饼图的半径,默认为 1。
- startangle::起始绘制饼图的角度,默认为从 x 轴正方向逆时针画起,如设定 =90 则从 y 轴正方向画起。
- counterclock:布尔值,设置指针方向,默认为 True,即逆时针,False 为顺时针。
- wedgeprops :字典类型,默认值 None。参数字典传递给 wedge 对象用来画一个饼图。例如:wedgeprops={‘linewidth’:5} 设置 wedge 线宽为5。
- textprops :字典类型,默认值为:None。传递给 text 对象的字典参数,用于设置标签(labels)和比例文字的格式。
- center :浮点类型的列表,默认值:(0,0)。用于设置图标中心位置。
frame :布尔类型,默认值:False。如果是 True,绘制带有表的轴框架。
rotatelabels :布尔类型,默认为 False。如果为 True,旋转每个 label 到指定的角度。
1 | movie_name = ['雷神3:诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','狂兽','其它'] |
__END__

文章出处:matplotlib学习笔记
作者签名:简单地活着, 肆意又精彩.
关于主题:Hexo - Live For Code
版权声明:文章除特别声明外,均采用 BY-NC-SA 许可协议,转载请注明出处