我试图绘制一组数据点的概率密度函数,这些数据点是从正态分布中抽样得到的,如下所示:
mu, sigma = 0, 1
N = 100000
s = np.random.normal(mu, sigma, N)
def normal_dist(x , mean , sd):
prob_density = (np.pi*sd) * np.exp(-0.5*((x-mean)/sd)**2)
return prob_density
pdf = normal_dist(s, mu, sigma)
plt.plot(s,pdf , color = 'red')
plt.xlabel('Data points')
plt.ylabel('Probability Density')
plt.show()
但这是我得到的图片。我有兴趣得到一行代表pdf的行。我哪里做错了?
1条答案
按热度按时间xfb7svmp1#
在
pyplot.plot
中,将一个点连接到下一个点,按照它们出现的顺序,这就是你所看到的,你的点的顺序是随机的,所以你看到的是随机点之间的一堆连接。sore
s
应该可以修复它:s.sort()