利用正态分布生成雾霾分布的程序代码
时间: 2023-10-22 16:18:15 浏览: 36
以下是生成雾霾分布的程序代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 设置均值和标准差
mu = 50
sigma = 20
# 生成正态分布随机数
s = np.random.normal(mu, sigma, 1000)
# 绘制直方图
count, bins, ignored = plt.hist(s, 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` 模块中的 `normal` 函数生成均值为 `mu`,标准差为 `sigma` 的 1000 个正态分布随机数。然后使用 `matplotlib` 模块中的 `hist` 函数绘制直方图。最后,使用 `plot` 函数绘制正态分布曲线。可以根据需要调整均值和标准差的值来生成不同的雾霾分布。
相关问题
正态分布生成随机数matlab代码
你可以使用 `randn` 函数来生成服从正态分布的随机数。这个函数的参数可以是一个标量,表示生成一个随机变量;也可以是一个矩阵,表示生成一个矩阵,其中每个元素都是服从正态分布的随机数。
例如,生成一个标量:
```
x = randn();
```
生成一个 3x3 的矩阵:
```
X = randn(3);
```
如果你需要更加精细的控制,可以使用 `makedist` 函数构造一个正态分布的概率分布对象,然后使用 `random` 方法来生成随机数。例如:
```
pd = makedist('Normal');
x = random(pd);
```
生成正态分布随机数的代码
生成正态分布随机数可以使用Python中的random模块和numpy模块的random子模块,具体代码如下:
使用random模块:
```python
import random
# 生成均值为mu,标准差为sigma的正态分布随机数
def normal_distribution(mu, sigma):
return random.normalvariate(mu, sigma)
# 例子:生成均值为0,标准差为1的正态分布随机数
num = normal_distribution(0, 1)
print(num)
```
使用numpy模块:
```python
import numpy as np
# 生成均值为mu,标准差为sigma的正态分布随机数
def normal_distribution(mu, sigma):
return np.random.normal(mu, sigma)
# 例子:生成均值为0,标准差为1的正态分布随机数
num = normal_distribution(0, 1)
print(num)
```
注意:以上代码中,参数mu表示正态分布的均值,参数sigma表示正态分布的标准差。