我们在python程序开发中使用skimage、turtle等库和模块来绘制图像时,大部分画出来的都是二维平面图形,也就是只有x和y两个坐标轴。那么实际上现在已经可以在python中来绘制带有高度z轴的三维立体图形了,下文主要介绍的内容就是Python画三维立体图形代码,往下看看吧。
1.那么首先就是打开编辑器新建python脚本,然后在其中编写代码来将所需使用到的模块导入。所用到模块有matplotlib库之中的pyplot、数据生成和计算库numpy、以及最重要来绘制3D图像的Axes3D模块,代码如下:
import matplotlib.pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D
2.那么第二步就是要去准备图像绘制的数据了,因为三维立体图形多了一个Z轴来表示高度,那么就需要定义三个变量来接收这三个坐标轴的数据。其中Z轴数据是根据前两个xy轴数据来生成的,之后还要定义变量接收图像绘制的函数,这样才可以去绘制立体的曲面,代码示例如下所示:
x = np.linspace(-1,1,100) y = np.linspace(-1,1,100) x_, y_ = np.meshgrid(x,y,indexing='ij') z_ = x_**2 + y_**2 + x_ / 3 + y_ / 3
3.接下来就是要去编写绘制三维立体图的代码了,先调用figure()方法创建出来一个指定大小的画布,然后再去用add方法添加子图到这个画布上。并且此方法中需要设置参数projection的值为3d才可以,这样绘制出来的子图就是三维立体图像,而那个导入的模块也是使用在此的。
然后就是用这个三维立体图像对象调用方法来绘制曲面了,再去设置一下显示色颜色棒即可,详细代码如下所示:
fig = plt.figure(figsize=(10, 10), facecolor='white') sub = fig.add_subplot(111, projection='3d') surf = sub.plot_surface(x_, y_, z_, cmap=plt.cm.brg) cb = fig.colorbar(surf, shrink=0.8, aspect=15) plt.show()
以上就是关于“Python画立体图形代码是什么?Python如何绘制三维立体图形”的全部内容了,希望对你有所帮助。