如何使用Python中的Matplotlib创建3维等高线图?
Matplotlib是一种流行的Python包,用于数据可视化。可视化数据是关键步骤,因为它有助于理解数据发生了什么,而不必查看数字和执行复杂的计算。它有助于有效地将定量见解传达给受众。
Matplotlib用于使用数据创建2维图。它带有一种面向对象的API,可帮助将图嵌入Python应用程序中。Matplotlib可以与IPython shell、Jupyter notebook、Spyder IDE等一起使用。
它是用Python编写的。它使用了Python中的数值Python包Numpy来创建。
可以使用以下命令在Windows上安装Python –
pip install matplotlib
Matplotlib的依赖关系为 –
Python(大于或等于版本3.4)
NumPy
Setuptools
Pyparsing
Libpng
Pytz
Free type
Six
Cycler
Dateutil
创建三维图以查看数据点的x,y和z轴。它还可用于了解梯度下降函数的工作方式,并查找算法的系数的最佳值。
让我们了解如何使用Matplotlib创建三维等高线图 –
例子
from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
def fun(x,y):
return np.sin(np.sqrt(x**2 + y**2))
x = np.linspace(-5,5,30)
y = np.linspace(-5,5,30)
X, Y = np.meshgrid(x, y)
Z = fun(X, Y)
fig = plt.figure()
ax = plt.axes(projection='3d')
ax.contour3D(X, Y, Z,50,cmap='binary')
ax.set_ylabel("Y-axis")
ax.set_xlabel("X-axis")
ax.set_zlabel("Z-axis")
ax.set_title('A sample 3D contour plot')
plt.show()
输出
解释
-
导入所需的包并定义别名以便使用。
-
创建一个函数“fun”,该函数使用两个变量使用“sin”函数生成数据。
-
使用NumPy库创建数据值。
-
使用“figure”函数创建一个空的图形。
-
使用“axes”函数创建用于绘制图形的坐标轴。
-
使用“contour3D”指定正在可视化创建的数据的三维等高线图。
-
使用“set_xlabel”、“set_ylabel”、“z_label”和“set_title”函数提供“X”轴、“Y”轴、Z轴和标题的标签。
-
使用“show”函数在控制台上显示它。