利用Numpy产生正态分布图,理解下面代码,并给每行代码进行注释
时间: 2024-05-02 19:18:23 浏览: 10
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成10000个符合正态分布的随机数,均值为0,标准差为1
data = np.random.normal(0, 1, 10000)
# 画出直方图
plt.hist(data, bins=100)
# 显示图像
plt.show()
```
解释:
1. 导入NumPy和Matplotlib库。
2. 生成一个包含10000个随机数的一维数组,这些随机数符合均值为0,标准差为1的正态分布。这里使用了Numpy的`random.normal()`函数。
3. 用Matplotlib的`hist()`函数画出直方图,将数据分成100个区间(即100个柱子)。
4. 用Matplotlib的`show()`函数显示图像。
相关问题
利用Numpy产生正态分布图
以下是利用Numpy产生正态分布图的示例代码:
```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.title('Normal distribution')
plt.xlabel('Value')
plt.ylabel('Probability density')
# 显示图像
plt.show()
```
运行以上代码,就可以生成一个正态分布图,如下图所示:
![Normal distribution](https://img-blog.csdn.net/20180504160633434?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hpbGxhcnlfbWluZ19zaGVuZw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/50)
numpy 正态分布
Numpy中的正态分布函数可以通过np.random.randn()或np.random.normal()来生成。np.random.randn()是根据标准正态分布生成随机数,可以指定生成的矩阵的形状,例如np.random.randn(3,5)将生成一个3行5列的标准正态分布随机数矩阵。而np.random.normal()可以根据指定的均值、标准差和形状生成符合正态分布的随机数,例如np.random.normal(loc=170, scale=5, size=(2,5))将生成一个均值为170,标准差为5,形状为2行5列的正态分布随机数矩阵。