使用Matplotlib绘制3D统计图

首页 linux 使用Matplotlib绘制3D统计图

引言


在数据分析和可视化领域,三维统计图是一种非常有用的工具,它可以帮助我们更直观地理解数据的分布和关系。Matplotlib是Python中非常流行的绘图库,它提供了强大的绘图功能,包括绘制三维统计图。本文将介绍如何使用Matplotlib的mplot3d模块来绘制三维统计图。

安装Matplotlib


首先,确保已经安装了Matplotlib库。如果没有安装,可以通过以下命令使用pip进行安装:


   pip install matplotlib


绘制3D散点图


   导入所需的库:


   import matplotlib.pyplot as plt

   from mpl_toolkits.mplot3d import Axes3D

   import numpy as np


   生成随机数据:


   np.random.seed(0)

   x = np.random.rand(50)

   y = np.random.rand(50)

   z = np.random.rand(50)


   创建3D图形和坐标轴:


   fig = plt.figure()

   ax = fig.add_subplot(111, projection='3d')


   绘制散点图:


   ax.scatter(x, y, z)


   设置坐标轴标签:


   ax.set_xlabel('X Axis')

   ax.set_ylabel('Y Axis')

   ax.set_zlabel('Z Axis')


   显示图形:


   plt.show()


绘制3D曲面图


   导入所需的库:


与上面相同。


   生成数据:


这里我们使用numpy的meshgrid函数生成网格数据。


   x = np.linspace(-5, 5, 100)

   y = np.linspace(-5, 5, 100)

   x, y = np.meshgrid(x, y)

   z = np.sin(np.sqrt(x**2 + y**2))


   创建3D图形和坐标轴:


与上面相同。


   绘制曲面图:


   ax.plot_surface(x, y, z, cmap='viridis')


   设置坐标轴标签:


与上面相同。


   显示图形:


与上面相同。

结论


通过本文的介绍,您应该已经掌握了使用Matplotlib绘制3D统计图的基本方法。无论是绘制3D散点图还是3D曲面图,都可以轻松实现。希望这些示例和步骤能够帮助您更好地理解和应用Matplotlib库,从而更好地展示和分析您的数据。


附代码:

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

np.random.seed(0)
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
x, y = np.meshgrid(x, y)
z = np.sin(np.sqrt(x**2 + y**2))

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# ax.scatter(x, y, z)
ax.plot_surface(x, y, z, cmap='viridis')
ax.set_xlabel('X Axis')
ax.set_ylabel('Y Axis')
ax.set_zlabel('Z Axis')

plt.show()

28995_ealx_1859.png


417    2024-07-05 15:58:34