文章目录

  • 直方图
  • 参数详解
  • 参数实例及讲解
  • bins通过列表设为区间及返回值分析
  • density
  • 参考文章


直方图

概念: 直方图是用来衡量连续变量的概率分布的。

参数详解

使用matplotlib绘制直方图:

直方图的参数只有一个x!!!不像条形图需要传入x,y

plt.hist(
    x,
    bins=None,
    range=None,
    density=False,
    weights=None,
    cumulative=False,
    bottom=None,
    histtype='bar',
    align='mid',
    orientation='vertical',
    rwidth=None,
    log=False,
    color=None,
    label=None,
    stacked=False,
    *,
    data=None,
    **kwargs,
)

hist()的参数

  • x: 输入数据
  • bins:可以是一个bins数量的整数值,也可以是表示bins的一个序列。默认值为10

bins(把值分成多少等份),也就是说我们需要先把连续值划分成不同等份,然后计算每一份里面数据的数量。

  • range 设置X轴刻度的起始刻度和结束刻度
  • density:如果值为True,直方图的值将进行归一化处理,形成概率密度,默认值为False
  • color:指定直方图的颜色。可以是单一颜色值或颜色的序列。如果指定了多个数据集合,颜色序列将会设置为相同的顺序。如果未指定,将会使用一个默认的线条颜色
  • orientation:通过设置orientationhorizontal创建水平直方图。默认值为vertical
  • align:{'left', 'mid', 'right'}, default: 'mid'
  • left:条形图位于左侧边缘。
  • 'mid':条形图位于中心位置。
  • 'right':条形图位于右侧边缘。
  • label:添加图例
  • rwidth:条形图的相对宽度

参数实例及讲解

import numpy as np
x = np.random.randint(1,10,size = 10)
# 展示下 rwidth 的作用
print(x)
plt.hist(x, bins=5, rwidth=0.5, range = (0, 10), color = "red", label='数字统计')  # 将直方图分成5份, 展示分布频率
plt.legend()
plt.show()

label: 声明图例后,使用legend(),才能显示
rwidth:设置图形所占x轴的比例
range: 设置X轴刻度的区间

代码运行结果

python直方图显示标签 python直方图参数_数据分析

bins通过列表设为区间及返回值分析

print(x)
n, bins, patches = plt.hist(x, bins=[1,3,5,8,10], rwidth=0.5)
plt.show()
  • 我们指定的是间隔的边缘,每一个间隔为[1,3) [3,5) [5,8) [8,10],
  • rwidth:会按照间隔的0.5进行展示,比如x轴1到3的一半,5到8 的一半,
  • 除了最后一个间隔外,所有间隔均为左闭右开
  • 而且每一个间隔长度不用相等
  • 在我们指定间隔外的数据会被直接忽略

注:如果bins为列表形式,则range对其无影响

print('数字分布:', n)
print('间隔划分:', bins)
print(patches)

n:表示落入每个bins中的样本数
bins: 表间隔的划分区间
patchesPatch objects,暂不明白😰

代码运行结果

python直方图显示标签 python直方图参数_数据分析_02

density

print(x)
n, bins, patches = plt.hist(x, bins=[1,3,5,8,10], rwidth=0.5, density=True)
plt.show()
print('数字分布:', n)
print('间隔划分:', bins)
print(patches)
  • density设置为True时,纵轴显示分布频率
  • n此时为分布频率的值

参考文章

Matplotlib官方手册地址

python绘制直方图matplotlib.pyplot.hist( ) 方法常用参数详解


python直方图显示标签 python直方图参数_数据分析_03