Я хочу создать гистограмму (из псевдослучайных чисел) с помощью моей функции распределения вероятности Гаусса, однако я не хочу, чтобы гистограмма превышала максимальную точку моего PDF. Вот мой код:Гистограмма на графике функции плотности вероятности Гаусса в Python
from math import sqrt, pi, exp
from scipy.stats import norm
import numpy as np
import matplotlib.pyplot as plt
mu = 0.5
variance = 0.5
sigma = sqrt(variance)
npts = 100
x = np.linspace(norm.ppf(0.01), norm.ppf(0.99), npts)
#plot pdf
plt.plot(x, norm.pdf(x, mu, sigma), lw=3, c='r', label='PDF')
#RNG
y = [-3, -2, -1, 0, -1, -2, -3]
if y < 1./(sigma*sqrt(2*pi))*exp(-(mu**2/2*sigma**2)):
u = sigma * np.random.randn(100) + mu
plt.hist(u, histtype='bar', alpha=0.5)
plt.show()
Кто-нибудь знает, как это сделать или есть какие-то подсказки?
Я не могу воспроизвести это на основе кода, который вы опубликовали (с этими импортами). 'From math import sqrt, pi, exp; от нормы импорта scipy.stats; импорт numpy как np; import matplotlib.pyplot as plt' –
@JamieBull Спасибо, что указали это – lyche