Seaborn distplot中的y轴是什么?

我有一些几何分布的数据。当我想看看它时,我使用

sns.distplot(data, kde=False, norm_hist=True, bins=100)

结果是图片:

http://img2.mukewang.com/60a37b730001078d03820245.jpg

但是,垃圾箱高度的总和不等于1,这意味着y轴没有显示概率,这是有所不同的。如果相反,我们使用

weights = np.ones_like(np.array(data))/float(len(np.array(data)))
plt.hist(data, weights=weights, bins = 100)

y轴应显示概率,因为箱柜高度之和为1:

http://img.mukewang.com/60a37b850001db9803720243.jpg

在这里可以更清楚地看到:假设我们有一个列表

l = [1, 3, 2, 1, 3]

我们有两个1,两个3和一个2,因此它们各自的概率分别为2 / 5、2 / 5和1/5。当我们使用带有3个垃圾箱的seaborn histplot时:

sns.distplot(l, kde=False, norm_hist=True, bins=3)

我们得到:

http://img4.mukewang.com/60a37b91000187d203670250.jpg

如您所见,第1个和第3个bin的总和为0.6 + 0.6 = 1.2,该数字已经大于1,因此y轴不是概率。当我们使用


weights = np.ones_like(np.array(l))/float(len(np.array(l)))

plt.hist(l, weights=weights, bins = 3)

我们得到:

http://img4.mukewang.com/60a37ba500019e0603770253.jpg

y轴是概率,如预期的那样为0.4 + 0.4 + 0.2 = 1。

在这两种情况下,每种情况下使用的两种方法的bin数量都是相同的:100个bin用于几何分布的数据,3个bin用于具有3个可能值的小数组l。因此,垃圾箱数量不是问题。

我的问题是:在以norm_hist = True调用的seadist distplot中,y轴的含义是什么?


慕沐林林
浏览 656回答 2
2回答

素胚勾勒不出你

从文档中:norm_hist:布尔值,可选如果为True,则直方图高度显示的是密度而不是计数。如果绘制了KDE或拟合密度,则暗含此信息。因此,您还需要考虑箱体宽度,即计算曲线下方的面积,而不仅仅是箱体高度的总和。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python