python正态分布图
时间: 2023-05-29 14:08:03 浏览: 251
以下是一个使用Python绘制正态分布图的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成一组随机数据
mu, sigma = 0, 0.1 # 均值和标准差
data = np.random.normal(mu, sigma, 1000)
# 绘制正态分布图
count, bins, ignored = plt.hist(data, 30, density=True)
plt.plot(bins, 1/(sigma * np.sqrt(2 * np.pi)) *
np.exp( - (bins - mu)**2 / (2 * sigma**2) ),
linewidth=2, color='r')
plt.show()
```
该代码使用numpy库中的`random.normal`函数生成一组随机数据,然后使用matplotlib库中的`hist`函数绘制直方图,并使用`plot`函数绘制正态分布曲线。最终结果如下图所示:

相关问题
python正态分布图形
在Python中,我们可以使用matplotlib库中的`sns.distplot()`函数以及scipy库中的`norm`模块来绘制正态分布的图形。正态分布,也被称为高斯分布,通常表示连续数据的随机变量。下面是一个简单的步骤:
1. 首先,你需要安装这两个库,如果尚未安装,可以使用pip进行安装:
```bash
pip install matplotlib scipy
```
2. 然后你可以创建一个正态分布的数据集,比如平均值0,标准差1:
```python
from scipy.stats import norm
import numpy as np
mean = 0
std_dev = 1
x = norm.rvs(mean, std_dev, size=1000) # 生成1000个服从正态分布的数据点
```
3. 使用matplotlib绘制分布图:
```python
import seaborn as sns
import matplotlib.pyplot as plt
plt.figure(figsize=(8, 6))
sns.distplot(x, kde=True, fit=norm)
plt.title('Normal Distribution (μ=' + str(mean) + ', σ=' + str(std_dev) + ')')
plt.xlabel('Value')
plt.ylabel('Probability Density')
plt.show()
```
`kde=True`表示显示核密度估计(Kernel Density Estimation),`fit=norm`则将数据拟合到正态分布。
python 正态分布
在Python中,可以使用NumPy和SciPy库来计算正态分布。以下是一个示例代码,演示如何使用这些库来生成和可视化正态分布:
```python
import matplotlib.pyplot as plt
import numpy as np
from scipy.stats import norm
# 生成随机数据
data = np.random.normal(0, 1, 10000)
# 计算均值和标准差
mu, std = norm.fit(data)
# 绘制直方图
plt.hist(data, bins=50, density=True, alpha=0.6, color='g')
# 绘制正态分布曲线
xmin, xmax = plt.xlim()
x = np.linspace(xmin, xmax, 100)
p = norm.pdf(x, mu, std)
plt.plot(x, p, 'k', linewidth=2)
# 添加标题和标签
plt.title("Normal distribution")
plt.xlabel("Value")
plt.ylabel("Frequency")
plt.show()
```
在这个例子中,我们使用`numpy.random.normal`函数生成具有平均值为0和标准差为1的10000个随机数。然后,我们使用`scipy.stats.norm`中的`fit`函数计算数据的均值和标准差。最后,我们使用`matplotlib`绘制直方图和正态分布曲线。
阅读全文
相关推荐













