Python直方图绘制(与标准正态分布进行比较)

标准正态分布概率密度函数公式为:

代码:(直方图的参数在代码注释中)

import numpy as np
import matplotlib.pyplot as plt

x=np.arange(-4.5,4.5,0.01)
def f(x):
    return (np.e)**(-x**2/2)/(2*np.pi)**0.5

samples=np.random.normal(0,1,size=1000000)

#直方图,用来展示samples中数据分布情况,横轴是数据,纵轴是出现的次数(也就是频数)
#bins:指定几条条状图
#normed=True表示进行归一化,即y轴数据全部除以最大值,使数据位于(0,1)之间,默认是False
#histtype='step'只显示直方图最外围一圈,不填默认是histtype='stepfilled'
bins=100

plt.plot(x,f(x),label='f(x)')
plt.hist(samples,bins=bins,density=True,histtype='stepfilled',label='bins=%s'%bins)
plt.legend(loc='upper left')
plt.show()

图形:

样本数:1000 ,bins=100:                                       样本数:10000,bins=100:

                

可以看出,样本太少会导致和标准正态分布曲线有差异,样本越大,差异越小

 

样本数:1000000(一百万),bins=10:                   样本数:1000000(一百万),bins=100:

                                                               

              

bins是 直方的个数,直方个数太少也不行

欢迎大佬批评指正,提建议,谢谢!!!

更多博客推荐:

基于u-net,cv2以及cnn的中文车牌定位,矫正和端到端识别软件

使用百度API和u-net进行车牌图片的自动标注

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不啻逍遥然

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值