专做新车分期的网站,东阳网站制作,国内目前比较好的crm系统,企业网站建设项目描述一、直方图介绍
1、什么是直方图 直方图#xff0c;形状类似柱状图却有着与柱状图完全不同的含义。直方图牵涉统计学的概念#xff0c;首先要对数据进行分组#xff0c;然后统计每个分组内数据元的数量。在坐标系中#xff0c;横轴标出每个组的端点#xff0c;纵轴表示频…一、直方图介绍
1、什么是直方图 直方图形状类似柱状图却有着与柱状图完全不同的含义。直方图牵涉统计学的概念首先要对数据进行分组然后统计每个分组内数据元的数量。在坐标系中横轴标出每个组的端点纵轴表示频数每个矩形的高代表对应的频数称这样的统计图为频数分布直方图
2、示例 某校初三1班36位同学的身高的频数分布直方图如下图所示
1身高在哪一组的同学最多 2身高在160.5cm以上的同学有多少人
相关概念 组数在统计数据时我们把数据按照不同的范围分成几个组分成的组的个数称为组数 组距每一组两个端点的差
已知最高175.5最矮150.5组距5求组数 (175.5 - 150.5) / 5 5
二、直方图与柱状图的对比
1、柱状图是以矩形的长度表示每一组的频度或数量其宽度表示类别则是固定的利于较小的数据集分析
2、直方图描述的是一组数据的频次分布是以矩形的长度表示每一组的频度或数量宽度则表示各组的组距因此其高度与宽度均有意义利于展示大量数据集的统计结果 例如把年龄分成“0-55-10...80-85”17个组统计一下中国人口年龄的分布情况。直方图有助于我们知道数据的分布情况诸如众数、中位数的大致位置、数据是否存在缺口或者异常值
3、直方图展示数据的分布柱状图比较数据的大小 这是直方图与柱状图最根本的区别。举个例子有10个苹果每个苹果重量不同。如果使用直方图就展示了重量在0-100g的苹果有多少个10-20g的苹果有多少个如果使用柱状图则展示每个苹果的具体重量 所以直方图展示的是一组数据中在你划分的区间里这些数据的分布情况但是我们不知道在一个区间里单个数据的具体大小
4、直方图x轴为定量数据柱状图x轴为分类数据
5、直方图柱子无间隔柱状图柱子有间隔
6、直方图柱子宽度可不一柱状图柱子宽度需一致
7、直方图要素
三、直方图绘制
1、需求电影时长分布状况 现有250部电影的时长希望统计出这些电影时长的分布状态比如时长为100分钟到120分钟电影的数量出现的频率等信息你应该如何呈现这些数据
2、matplotlib.pyplot.hist(x, binsNone, normedNone, **kwargs) 说明 x这一组数据 bins组数
绘制 设置组距 设置组数通常对于数据较少的情况分为5~12组数据较多更换图形显示方式 通常设置组数会有相应公式组数 级差 / 组距 (max - min) / distance
3、代码
# 直方图绘制
# 需求电影时长分布状况# 1、准备数据
time [131, 98, 125, 131, 124, 139, 131, 117, 128, 108, 135, 138, 131, 102, 107, 114, 119, 128, 121, 142, 127, 130, 124, 101, 110, 116, 117, 110, 128, 128, 115, 99, 136, 126, 134, 95, 138, 117, 111,78, 132, 124, 113, 150, 110, 117, 86, 95, 144, 105, 126, 130,126, 130, 126, 116, 123, 106, 112, 138, 123, 86, 101, 99, 136,123, 117, 119, 105, 137, 123, 128, 125, 104, 109, 134, 125, 127,105, 120, 107, 129, 116, 108, 132, 103, 136, 118, 102, 120, 114,105, 115, 132, 145, 119, 121, 112, 139, 125, 138, 109, 132, 134,156, 106, 117, 127, 144, 139, 139, 119, 140, 83, 110, 102,123,107, 143, 115, 136, 118, 139, 123, 112, 118, 125, 109, 119, 133,112, 114, 122, 109, 106, 123, 116, 131, 127, 115, 118, 112, 135,115, 146, 137, 116, 103, 144, 83, 123, 111, 110, 111, 100, 154,136, 100, 118, 119, 133, 134, 106, 129, 126, 110, 111, 109, 141,120, 117, 106, 149, 122, 122, 110, 118, 127, 121, 114, 125, 126,114, 140, 103, 130, 141, 117, 106, 114, 121, 114, 133, 137, 92,121, 112, 146, 97, 137, 105, 98, 117, 112, 81, 97, 139, 113,134, 106, 144, 110, 137, 137, 111, 104, 117, 100, 111, 101, 110,105, 129, 137, 112, 120, 113, 133, 112, 83, 94, 146, 133, 101,131, 116, 111, 84, 137, 115, 122, 106, 144, 109, 123, 116, 111,111, 133, 150]# 2、创建画布
plt.figure(figsize(20,8), dpi100)# 3、绘制直方图
# 组距
distance 2
# 组数
group_num int((max(time) - min(time)) / distance)
plt.hist(time, group_num)# 修改x轴刻度
plt.xticks(range(min(time), max(time) 2, distance))# 添加网格
plt.grid(linestyle--, alpha0.5)# 添加xy轴描述信息
plt.xlabel(电影时长大小)
plt.ylabel(电影的数据量)# 4、显示图像
plt.show() 3、直方图注意点
1注意组距 组距会影响直方图呈现出来的数据分布因此在绘制直方图的时候需要多次尝试改变组距
2注意y轴所代表的变量 y轴上的变量可以是频次数据出现了多少次、频率频次/总次数、频率/组数不同的变量会让直方图描述的数据分布意义不同
四、直方图的应用场景
1、用于表示分布情况
2、通过直方图还可以观察和估计哪些数据比较集中异常或者孤立的数据分布在何处 例如用户年龄分布商品价格分布