欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

matplotlib 3D图

程序员文章站 2022-07-13 08:34:48
...

matplotlib 3D图

首先导入相应的包:

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

创建一个三维的空间坐标:

fig = plt.figure()
ax = Axes3D(fig)
plt.show()

得出:
matplotlib 3D图
我们在三维空间上做些图形:

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = Axes3D(fig)
x = np.arange(-4,4,0.25)
y = np.arange(-4,4,0.25)
X,Y=np.meshgrid(x,y)
R = np.sqrt(X**2 * Y**2)
Z=np.sin(R)
ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow'))
plt.show()

得出:matplotlib 3D图
其中cmap是图像颜色的一个函数

我们在对上述代码进行修改:

fig = plt.figure()
ax = Axes3D(fig)
x = np.arange(-4,4,0.25)
y = np.arange(-4,4,0.25)
X,Y=np.meshgrid(x,y)
R = np.sqrt(X**2 * Y**2)
Z=np.sin(R)
ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow'))
ax.contourf(X,Y,Z,zidr='z',offset = -2,cmap='rainbow')
ax.set_zlim(-2,2)
plt.show()

得出:matplotlib 3D图

ax.contourf(X,Y,Z,zidr='z',offset = -2,cmap='rainbow')

上述这行代码的映射的方向是z轴的方向,位置是-2的点

以上便是对3D图的介绍