pyhton 生成多个自变量的正态分布图
时间: 2023-10-14 13:26:55 浏览: 40
以下是使用Python Matplotlib库生成多个自变量的正态分布图的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成数据
mean = [0, 0]
cov = [[1, 0], [0, 1]]
x, y = np.random.multivariate_normal(mean, cov, 1000).T
# 绘制图形
fig, ax = plt.subplots()
ax.scatter(x, y)
# 设置坐标轴标题
ax.set_title('Multivariate Normal Distribution')
ax.set_xlabel('X')
ax.set_ylabel('Y')
# 显示图形
plt.show()
```
在上述代码中,我们首先使用 `numpy.random.multivariate_normal()` 函数生成了两个变量 `x` 和 `y`,这两个变量服从均值为0,协方差为单位矩阵的多元正态分布。
然后,我们使用 `matplotlib` 库的 `scatter()` 函数将这些数据点绘制成散点图。最后,我们设置了坐标轴的标题和标签,并使用 `show()` 函数显示图形。
如果你需要生成更多的自变量,可以在 `mean` 和 `cov` 变量中添加更多的均值和协方差矩阵。
相关问题
python生成正态分布图像
生成正态分布图像可以使用Python中的matplotlib库。下面是一个简单的例子:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成一组随机数据
mu, sigma = 0, 0.1
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()
```
这段代码会生成一个符合正态分布的随机数据,然后用直方图和正态分布曲线表示这些数据的分布情况。你可以根据需要修改均值、标准差、数据数量等参数,来生成不同的正态分布图像。
python生成自带噪声的正态分布
可以使用numpy库中的random模块生成自带噪声的正态分布。具体实现代码如下:
```python
import numpy as np
# 生成均值为0,标准差为1的正态分布
noise = np.random.normal(0, 1, size=(10,))
print(noise)
```
这里生成了一个大小为10的一维数组,每个元素都是从均值为0,标准差为1的正态分布中随机抽取的。你可以根据需要调整均值和标准差的值。