Python中使用Matplotlib绘制3D图形示例
3D图形能给我们对数据带来更加深入地理解。Python的matplotlib库就包含了丰富的3D绘图工具。3D图形在数据分析、数据建模、图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何在Python中使用 matplotlib进行3D图形的绘制,包括3D散点、3D表面、3D轮廓、3D直线(曲线)以及3D文字等的绘制。
准备工作:
Python中绘制3D图形,依旧使用常用的绘图模块matplotlib,但需要安装mpl_toolkits工具包,安装方法如下:Windows命令行进入到python安装目录下的Scripts文件夹下,执行: pip3 install --upgrade matplotlib即可;Linux环境下直接执行该命令。
安装好这个模块后,即可调用mpl_tookits下的mplot3d类进行3D图形的绘制。
下面以实例进行说明。
1、创建三维坐标轴对象Axes3D
创建Axes3D主要有两种方式,一种是利用关键字projection='3d'l来实现,另一种则是通过从mpl_toolkits.mplot3d导入对象Axes3D来实现,目的都是生成具有三维格式的对象Axes3D。
2、3D曲线和散点
随后在定义的坐标轴上画图:
效果图如下:
:3、3D曲面
下一步画3D曲面:
如果加入渲染时的步长,会得到更加清晰细腻的图像:
ax3.plot_surface(X,Y,Z,rstride = 1, cstride = 1,cmap='rainbow'),其中的row和cloum_stride为横竖方向的步长。
4、等高线
同时还可以将等高线投影到不同的面上:
5、随机散点图
可以利用scatter()生成各种不同大小,颜色的散点图,其参数如下:
5、3D表面形状的绘制
这段代码是绘制一个3D的椭球表面,结果如下:
7、绘制3D文字