怎么在Python中画三维正态分布
时间: 2024-09-08 12:03:16 浏览: 190
在Python中,你可以使用matplotlib库的`mplot3d`模块以及numpy库来绘制三维正态分布,通常也称为高斯分布。以下是一个简单的示例:
首先,你需要安装matplotlib库,如果还没有安装,可以使用pip命令:
```bash
pip install matplotlib numpy
```
然后,你可以使用以下代码来创建三维正态分布图:
```python
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 定义正态分布参数
mu = [0, 0]
sigma = [[1, 0], [0, 1]] # 单位矩阵表示标准差为1的方差
x, y = np.meshgrid(np.linspace(-3, 3, 100), np.linspace(-3, 3, 100)) # x, y坐标网格
# 计算z值(三维空间的值)
rv = np.random.multivariate_normal(mu, sigma, 1000) # 使用random模块生成随机样本
z = rv[:, 0] + rv[:, 1]
# 创建3D图形并绘制
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(x, y, z, cmap='viridis', linewidth=0.5, antialiased=True)
# 标题和标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')
plt.show()
```
这个代码会生成一个三维的高斯曲面,其中颜色越深表示概率密度越大。
阅读全文