最近找实习有个公司的笔试题,有部分是画3d图,因此学习了一下如何用Python来画3d图。
基本思想:使用matplotlib创建画布,然后使用mpl_toolkits包的Axes3D函数将其转化为3d图画布。
先导入主要用到的函数:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
然后构造变量三个变量用户作图:
X = np.arange(-2, 2, 0.2)
Y = np.arange(-2, 2, 0.2)
X, Y = np.meshgrid(X, Y)
Z = np.sin(np.sqrt(X**2 + Y**2))
创建画布:
fig = plt.figure()
ax = Axes3D(fig)
画图:
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=plt.cm.hot)
ax.contourf(X, Y, Z, zdir='z', offset=-2, cmap=plt.cm.hot)
ax.set_zlim(-2,2)
plt.show()
我们下次再见,如果还有下次的话!!!
【新浪微博@516数据工作室】