网站首页 > 教程文章 正文
直方图(Histogram),又称质量分布图,它是一种条形图的一种,由一系列高度不等的纵向线段来表示数据分布的情况。 直方图的横轴表示数据类型,纵轴表示分布情况。
首先,我们需要了解柱状图和直方图的区别。直方图用于概率分布,它显示了一组数值序列在给定的数值范围内出现的概率;而柱状图则用于展示各个类别的频数。
例如,我们对某工厂的员工年龄做直方图统计,首先我们要统计出每一位员工的年龄,然后设定一个 20 至 65 的数值范围,并将该数值范围细分为 4 个区间段 (20.35),(35.45),(45.55),(55.65) , 最后通过直方图的形式,展示该工厂员工在相应年龄区间的分布情况。
如果想要构建直方图,必须遵循以下步骤:
将整个值范围划分为一系列区间。
区间值(bin)的取值,不可遗漏数据;
计算每个区间中有多少个值。
通常将 bin 指定为连续且不重叠的数值区间,而 bin 值指区间开始和结束的数值。
您可以使用下面的函数来绘制直方图:
matplotlib.pyplot.hist()1复制代码类型:[python]
该函数的参数说明如下:
x | 必填参数,数组或者数组序列。 |
bins | 可选参数,整数或者序列,bins 表示每一个间隔的边缘(起点和终点)默认会生成10个间隔。 |
range | 指定全局间隔的下限与上限值 (min,max),元组类型,默认值为 None。 |
density | 如果为 True,返回概率密度直方图;默认为 False,返回相应区间元素的个数的直方图。 |
histtype | 要绘制的直方图类型,默认值为“bar”,可选值有 barstacked(堆叠条形图)、step(未填充的阶梯图)、stepfilled(已填充的阶梯图)。 |
以下示例绘制了班级学生得分情况的直方图。其中定义了四个区间(bins)分别是:0-25、26-50、51-75 和 76-100.直方图显示了相应范围的学生人数。
from matplotlib import pyplot as plt
import numpy as np
#创建图形对象和轴域对象
fig,ax = plt.subplots(1,1)
a = np.array([22,87,5,43,56,73,55,54,11,20,51,5,79,31,27])
#绘制直方图
ax.hist(a, bins = [0,25,50,75,100])
#设置坐标轴
ax.set_title("histogram of result")
ax.set_xticks([0,25,50,75,100])
ax.set_xlabel('marks')
ax.set_ylabel('no.of students')
plt.show()12345678910111213复制代码类型:[python]
上述代码执行后,输出结果如下:
猜你喜欢
- 2025-04-05 python3 matplotlib下增加新字体并使用
- 2025-04-05 matplotlib 笔记2:调整边界、多个子图、inset子图
- 2025-04-05 Matplotlib饼状图(matplotlib 饼状图)
- 2025-04-05 一图入门matplotlib(matplotlib绘图基础)
- 2025-04-05 【Python】一文学会使用 Matplotlib 库(数据可视化)
- 2025-04-05 Matplotlib Figures的创建、显示和保存
- 2025-04-05 Python技巧之使用Matplotlib绘制数据图表
- 2025-04-05 为什么你觉得Matplotlib用起来困难?因为你还没看过这个思维导图
- 2025-04-05 基于matplotlib轻松绘制漂亮的表格
- 2025-04-05 Matplotlib | 一文搞定Matplotlib从入门到实战演练!
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- md5 sha1 (32)
- mybatis plus page (35)
- semaphore 使用详解 (32)
- update from 语句 (32)
- vue @scroll (38)
- 堆栈区别 (33)
- 在线子域名爆破 (32)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)