如何用python绘制正态分布图
时间: 2023-12-23 20:05:45 浏览: 145
很高兴回答你的问题!你可以使用Python的Matplotlib库来绘制正态分布图。下面给出一个简单的示例代码:
```
import matplotlib.pyplot as plt
import numpy as np
# 设置随机数种子,保证每次产生的随机数一样,方便对比
np.random.seed(42)
# 生成正态分布的数据
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.title('Normal distribution')
plt.xlabel('Values')
plt.ylabel('Probability density')
# 显示图像
plt.show()
```
运行上面的代码,即可得到绘制的正态分布图。希望这对你有所帮助!
相关问题
用python绘制正态分布坐标图
可以使用Python中的matplotlib库来绘制正态分布的坐标图。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成正态分布的数据
mu = 0 # 均值
sigma = 1 # 标准差
x = np.linspace(mu - 3*sigma, mu + 3*sigma, 100) # x轴数据
# 计算正态分布的概率密度函数
y = (1/(np.sqrt(2*np.pi)*sigma)) * np.exp(-(x-mu)**2 / (2*sigma**2))
# 绘制坐标图
plt.plot(x, y)
plt.title('Normal Distribution')
plt.xlabel('x')
plt.ylabel('Probability Density')
plt.grid(True)
plt.show()
```
这段代码将生成一个以x轴为横轴、概率密度为纵轴的正态分布坐标图。你可以根据自己的需求调整均值和标准差来生成不同形态的正态分布图。
用python绘制正态分布直方图
在Python中,你可以使用matplotlib库来绘制正态分布的直方图。下面是一个简单的例子:
```python
import numpy as np
import matplotlib.pyplot as plt
# 定义正态分布的均值和标准差
mean, std = 0, 1
# 创建一组随机数,模拟正态分布
data = np.random.normal(mean, std, 1000) # 可以调整样本数量
# 绘制直方图
plt.hist(data, bins=50, density=True, alpha=0.7, color='blue') # bins用于设置分组区间,density=True表示概率密度分布
plt.title('正态分布直方图')
plt.xlabel('数值')
plt.ylabel('频率/概率密度')
plt.grid(True)
# 添加高斯曲线作为参考
x = np.linspace(min(data), max(data), 100)
pdf = ((1 / (np.sqrt(2 * np.pi) * std)) * np.exp(-(x - mean)**2 / (2 * std**2)))
plt.plot(x, pdf, 'r-', linewidth=2, label='正态分布曲线')
plt.legend()
plt.show()
阅读全文
相关推荐













