type
status
date
slug
summary
tags
category
icon
password
Property
直方图
直方图(Histogram),又称质量分布图,是一种统计报告图,由一系列高度不等的条纹表示数据分布的情况。一般用横轴表示数据类型,纵轴表示分布情况。
直方图是数值数据分布的精确图形表示。为了构建直方图,第一步是将值的范围分段,即将整个值的范围分成一系列间隔,然后计算每个间隔中有多少值。这些值通常被指定为连续的,不重叠的变量间隔。间隔必须相邻,并且通常是(但不是必须的)相等的大小。
直方图的绘制方法,使用的是
plt.hist
方法来实现,这个方法的参数以及返回值如下:参数:
x
:数组或者可以循环的序列。直方图将会从这组数据中进行分组
bins
:数字或者序列(数组/列表等)。如果是数字,代表的是要分成多少组。如果是序列,那么就会按照序列中指定的值进行分组。比如[1,2,3,4]
,那么分组的时候会按照三个区间分成3组,分别是[1,2)/[2,3)/[3,4]
range
:元组或者None,如果为元组,那么指定x
划分区间的最大值和最小值。如果bins
是一个序列,那么range
没有有没有设置没有任何影响
density
:默认是False
,如果等于True
,那么将会使用频率分布直方图。每个条形表示的不是个数,而是频率/组距
(落在各组样本数据的个数称为频数,频数除以样本总个数为频率)
cumulative
:如果这个和density
都等于True
,那么返回值的第一个参数会不断的累加,最终等于1
其他参数:请参考:
https://matplotlib.org/api/_as_gen/matplotlib.pyplot.hist.html
返回值:
n
:数组。每个区间内值出现的个数,如果density=True
,那么这个将返回的是频率/组距
bins
:数组。区间的值
patches
:数组。每根条的对象,类型是matplotlib.patches.Rectangle
另外,也可以通过
density=True
,来实现频率分布直方图:而如果想要让
nums
的总和为1
,那么就需要设置cumulative=True
参数:饼图
饼图是一个划分为几个扇形的圆形统计图表,用于描述量、频率或百分比之间的相对关系的。 在
matplotlib
中,可以通过plt.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 到指定的角度
返回值:
patches
:饼图上每个分块的对象
texts
:分块的名字文本对象
autotexts
:分块的比例文字对象