Seaborn Distplot с плотностью по оси Y - PullRequest
2 голосов
/ 14 мая 2019

Я уже искал решения, но не смог найти решение, которое помогло бы решить мою проблему.Я пытаюсь построить гистограмму с функцией плотности, показывающей плотность по оси Y.meanopa - средние логарифмы S & P500.Что я не понимаю, так это:

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})

Заранее спасибо и еще раз буду признателен за любую поддержку.

Приветствия!

enter image description here enter image description here

1 Ответ

1 голос
/ 20 мая 2019

Ваш результат в порядке. Ось Y показывает не значения гистограммы, а плотность вероятности (фактически оценку плотности ядра). Поскольку ваши числа очень малы, ось X также имеет очень узкий интервал ... фактически на вашем графике, если вы строите квадрат 0,002 x 500 для аппроксимации общей площади под кривой, результат полной плотности вероятности равен около 1, как и ожидалось.

Как примечание, это воспроизводимая версия вашей проблемы, вы можете поиграть с изменением масштаба (min_rescale и max_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})

enter image description here

...