Matplotlib 直方图

直方图是数值数据分布的精确表示。它是连续变量的概率分布的估计,它是一种条形图。要构建直方图,请按照以下步骤操作 -

Bin值范围。将整个值范围划分为一系列间隔。计算每个间隔中有多少值。

bins通常指定为变量的连续,非重叠区间。matplotlib.pyplot.hist()函数绘制直方图。它计算并绘制x的直方图。

参数

下表列出了直方图的参数 -

x - 数组或数组序列。bins - 整数或序列或auto,可选项。range - bins的下部和上部范围。density - 如果为True,则返回元组的第一个元素将是规范化以形成概率密度的计数。cumulative - 如果为True,则计算直方图,其中每个bin给出该bin中的计数加上较小值的所有bin。histtype - 要绘制的直方图的类型,默认为bar。

下面的实例描绘了一个班级学生获得的标记直方图。定义了四个bins,0-25,26-50,51-75和76-100。直方图显示了落在此范围内的学生人数。

示例代码:

#Filename:example.py#Copyright:2020ByNhooo#Authorby:www.shangmayuan.com#Date:2020-08-08#!/usr/bin/envpython#coding=utf-8importmatplotlib.pyplotaspltimportnumpyasnpimportmathplt.rcParams['font.sans-serif']=['SimHei']#步骤一(替换sans-serif字体)plt.rcParams['axes.unicode_minus']=False#原文出自【立地货】,商业转载请联系作者获得授权,非商业请保留原文链接: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("结果直方图")ax.set_xticks([0,25,50,75,100])ax.set_xlabel('分数')ax.set_ylabel('学生数量')plt.show()

执行上面示例代码,得到以下结果 -

执行代码结果

编辑于2024-05-20 13:19