📜  Matplotlib-三维绘图

📅  最后修改于: 2020-11-08 07:29:15             🧑  作者: Mango


尽管最初设计Matplotlib时仅考虑了二维绘图,但在更高版本的Matplotlib二维显示之上仍构建了一些三维绘图实用程序,以提供一套用于三维数据可视化的工具。通过导入Matplotlib软件包随附的mplot3d工具包,可以启用三维图。

可以通过将关键字projection =’3d’传递给任何普通轴创建例程来创建三维轴。

from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.axes(projection='3d')
z = np.linspace(0, 1, 100)
x = z * np.sin(20 * z)
y = z * np.cos(20 * z)
ax.plot3D(x, y, z, 'gray')
ax.set_title('3D line plot')
plt.show()

现在,我们可以绘制各种三维图类型。最基本的三维图是根据(x,y,z)三元组创建的3D线图。这可以使用ax.plot3D函数创建。

三维绘图

使用ax.scatter3D函数生成3D散点图

from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.axes(projection='3d')
z = np.linspace(0, 1, 100)
x = z * np.sin(20 * z)
y = z * np.cos(20 * z)
c = x + y
ax.scatter(x, y, z, c=c)
ax.set_title('3d Scatter plot')
plt.show()

3D散点图