在海洋直方图上添加标准普通pdf

时间:2018-10-20 18:38:23

标签: python seaborn distribution

我想在使用seaborn构建的直方图上添加标准的标准pdf曲线。

import numpy as np
import seaborn as sns 
x = np.random.standard_normal(1000)
sns.distplot(x, kde = False)

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

scipy.stats.norm可通过
轻松访问正态分布的pdf 已知参数;默认情况下,它对应于标准正态,mu = 0,sigma = 1。

为了使其与采样数据正确对应,直方图应
显示密度而不是计数,因此请在seaborn.distplot调用中使用norm_hist=True

import numpy as np                                                              
import seaborn as sns                                                           
from scipy import stats                                                         
import matplotlib.pyplot as plt                                                 

x = np.random.standard_normal(1000)                                             
ax = sns.distplot(x, kde = False, norm_hist=True)                                    

# calculate the pdf over a range of values
xx = np.arange(-4, +4, 0.001)                                                   
yy = stats.norm.pdf(xx)                                                         
# and plot on the same axes that seaborn put the histogram
ax.plot(xx, yy, 'r', lw=2)                                                     

sample and theoretical distribution