python三维生命游戏(二)-------三维生命游戏(不完全体+3d建模)

import numpy as np

chushi = 6

a=np.zeros((chushi,chushi,chushi))#建立三维矩阵
b[0]
for i in range(0,chushi):
    
    b1=np.random.randint(2, size=(chushi, chushi))#二维矩阵的随机数
    a[i]=b1
    #b3=np.sum(b1,axis=0)
    #b2=np.sum(b1,axis=1)
    print(a)

3D图形在数据分析、数据建模、图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点、3D表面、3D轮廓、3D直线(曲线)以及3D文字等的绘制。


准备工作:

python中绘制3D图形,依旧使用常用的绘图模块matplotlib,但需要安装mpl_toolkits工具包,安装方法如下:windows命令行进入到python安装目录下的Scripts文件夹下,执行: pip install --upgrade matplotlib即可;linux环境下直接执行该命令。

安装好这个模块后,即可调用mpl_tookits下的mplot3d类进行3D图形的绘制。

下面以实例进行说明。


1、3D表面形状的绘制

[python]  view plain   copy
  1. from mpl_toolkits.mplot3d import Axes3D  
  2. import matplotlib.pyplot as plt  
  3. import numpy as np  
  4.   
  5. fig = plt.figure()  
  6. ax = fig.add_subplot(111, projection='3d')  
  7.   
  8. # Make data  
  9. u = np.linspace(02 * np.pi, 100)  
  10. v = np.linspace(0, np.pi, 100)  
  11. x = 10 * np.outer(np.cos(u), np.sin(v))  
  12. y = 10 * np.outer(np.sin(u), np.sin(v))  
  13. z = 10 * np.outer(np.ones(np.size(u)), np.cos(v))  
  14.   
  15. # Plot the surface  
  16. ax.plot_surface(x, y, z, color='b')  
  17.   
  18. plt.show()  

这段代码是绘制一个3D的椭球表面,结果如下:



2、3D直线(曲线)的绘制

[python]  view plain   copy
  1. import matplotlib as mpl  
  2. from mpl_toolkits.mplot3d import Axes3D  
  3. import numpy as np  
  4. import matplotlib.pyplot as plt  
  5.   
  6. mpl.rcParams['legend.fontsize'] = 10  
  7.   
  8. fig = plt.figure()  
  9. ax = fig.gca(projection='3d')  
  10. theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)  
  11. z = np.linspace(-22100)  
  12. r = z**2 + 1  
  13. x = r * np.sin(theta)  
  14. y = r * np.cos(theta)  
  15. ax.plot(x, y, z, label='parametric curve')  
  16. ax.legend()  
  17.   
  18. plt.show()  

这段代码用于绘制一个螺旋状3D曲线,结果如下:



3、绘制3D轮廓

[python]  view plain   copy
  1. from mpl_toolkits.mplot3d import axes3d  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值