将KDE添加到直方图上

aaa*_*aaa 9 python matplotlib

我想在直方图中添加密度图.我对pdf函数有所了解,但我感到困惑,其他类似的问题也无济于事.

from scipy.stats import * 
from numpy import*
from matplotlib.pyplot import*
from random import*

nums = []
N = 100
for i in range(N):
    a = randint(0,9)
    nums.append(a)

bars= [0,1,2,3,4,5,6,7,8,9]
alpha, loc, beta=5, 100, 22

hist(nums,normed= True,bins = bars)


show()
Run Code Online (Sandbox Code Playgroud)

我正在寻找这样的东西

在此输入图像描述

cel*_*cel 12

from scipy import stats
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(41)

N = 100
x = np.random.randint(0, 9, N)
bins = np.arange(10)

kde = stats.gaussian_kde(x)
xx = np.linspace(0, 9, 1000)
fig, ax = plt.subplots(figsize=(8,6))
ax.hist(x, normed=True, bins=bins, alpha=0.3)
ax.plot(xx, kde(xx))
Run Code Online (Sandbox Code Playgroud)

情节