【问题标题】:Seaborn Distplot with Density on y-axisSeaborn Distplot 与 y 轴上的密度
【发布时间】:2019-05-14 13:25:14
【问题描述】:

我已经在寻找解决方案,但找不到适合我的问题的解决方案。我正在尝试使用密度函数绘制直方图,显示 y 轴上的密度。 meanopa 是标准普尔 500 指数的平均对数回报。 我不明白的是以下内容。

norm_hist : bool,可选 如果为 True,则直方图高度显示密度而不是计数。 如果绘制了 KDE 或拟合密度,则暗示这一点。

由于在我的情况下 kde=True,我想知道为什么 y 轴上有观察次数。

sns.distplot(meanopa, hist=True, kde=True, bins=20, color = 'darkblue',
             hist_kws={'edgecolor':'black'}, kde_kws={'linewidth': 4})

在此先感谢,再次感谢任何形式的支持。

干杯!

【问题讨论】:

  • 虽然我无法访问您的数据,但对于类似的数据框,您的代码对我来说效果很好。您能发布您使用的是哪个seaborn 版本吗?干杯。
  • @lrnzcig 我使用的是 0.9.0 版。并感谢您编辑帖子!现在看起来好多了!
  • 同样使用 0.9.0 版本,很奇怪……一定是与您的数据相关的东西,无论如何,如果没有可重现的问题,很难帮助您。你能分享至少部分数据吗?干杯。
  • @lrnzcig 上面的数据够吗?干杯!
  • 嘿....好吧,至少了解一下你有什么样的数字...当我白天有时间时,我会尝试重现。但是,对于以后的帖子,请考虑(1)最好不要使用照片(2)最后目标是构建a reproducible example。这样更容易帮助你(因此你更有可能得到一个好的答案)。祝你有美好的一天!

标签: python statistics seaborn


【解决方案1】:

你的结果没问题。 y 轴不显示直方图的值,而是显示概率密度(实际上是核密度估计)。由于您的数字非常小,因此 x 轴的间隔也很窄......实际上,如果您构建一个 0.002 x 500 的平方来近似曲线下的总面积,则完全概率密度的结果是正如预期的那样,大约为 1。

请注意,这是您问题的可重现版本,如果您想查看概率密度的形状如何变化,可以使用重新缩放(min_rescalemax_rescale 值)。

random.seed(2)
min_rescale = -0.001
max_rescale = 0.001
close2 = [min_rescale + random.random() * (max_rescale - min_rescale) for x in range(100)] 
sns.distplot(close2, hist=True, kde=True, bins=5, color = 'darkblue',
             hist_kws={'edgecolor':'black'}, kde_kws={'linewidth': 4})

【讨论】:

    【解决方案2】:

    如果您对概率密度函数不感兴趣,但对每个 bin 的 概率/频率(由 bin 中的样本数除以样本总数得出)感兴趣,您可以使用hist_kws参数的'weights'属性。将此应用于lrnzcig的示例代码,

    random.seed(2)
    min_rescale = -0.001
    max_rescale = 0.001
    close2 = [min_rescale + random.random() * (max_rescale - min_rescale) for x in range(100)] 
    sns.distplot(close2, hist=True, kde=False, bins=5, color = 'darkblue',
             hist_kws={'edgecolor':'black', 'weights': np.ones(len(close2))/len(close2)})
    

    结果如下图: probabilities of Histogram bins using seaborn's distplot

    请注意,结果是没有概率密度函数,而是 bin 的权重总和为 1,与 bin 的参数值无关。 但是,当您执行 kde 时,这没有任何意义。

    【讨论】:

      猜你喜欢
      • 2019-10-11
      • 2019-01-11
      • 2015-05-25
      • 1970-01-01
      • 1970-01-01
      • 2017-12-29
      • 2017-05-11
      • 1970-01-01
      • 2021-03-06
      相关资源
      最近更新 更多