python 绘制三维统计直方图的代码
时间: 2023-11-25 19:04:31 浏览: 130
这里提供一个使用 Matplotlib 库绘制三维统计直方图的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 生成随机数据
x = np.random.normal(0, 1, 1000)
y = np.random.normal(0, 1, 1000)
z = np.random.normal(0, 1, 1000)
# 绘制三维统计直方图
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
hist, xedges, yedges = np.histogram2d(x, y, bins=10)
xpos, ypos = np.meshgrid(xedges[:-1] + 0.25, yedges[:-1] + 0.25, indexing="ij")
xpos = xpos.ravel()
ypos = ypos.ravel()
zpos = 0
dx = dy = 0.5 * np.ones_like(zpos)
dz = hist.ravel()
ax.bar3d(xpos, ypos, zpos, dx, dy, dz, color='b', zsort='average')
# 设置坐标轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')
# 显示图形
plt.show()
```
上述代码中,我们生成了 1000 个服从正态分布的随机数据,并使用 `histogram2d` 函数计算了 x 和 y 坐标轴上的二维直方图。然后,我们将直方图数据传递给 `bar3d` 函数,绘制三维直方图。最后,我们设置了坐标轴标签,并显示了图形。
阅读全文