python三维建模可视化_用Python三维可视化-一个神奇的函数
python的強(qiáng)大已經(jīng)深入人心,除了語法優(yōu)雅、入門容易、開發(fā)快速等優(yōu)點(diǎn)外,其最大的強(qiáng)大之處在于:
無所不能!
他的無所不能得益于它易擴(kuò)展、膠水語言、開源的特性,全世界廣大開發(fā)者都會(huì)為Python添加各種領(lǐng)域、各種功能并且質(zhì)量優(yōu)良的擴(kuò)展庫,比如今天要講的這位:
Mayavi——一個(gè)方便、強(qiáng)大的三維可視化庫
除此之外,還要講一位神奇的二元函數(shù):
為什么神奇?為什么有個(gè)系數(shù)4/3?用Mayavi將其顯示出來,你看了就知道。
首先,確保你的python是2.X版本(3.X版本沒試過,應(yīng)該也可以),并安裝了numpy、mayavi庫
然后,代碼如下:
1 importnumpy as np2 from enthought.mayavi importmlab3 x,y=np.ogrid [-2:2:160j,-2:2:160j]4 z=abs(x)*np.exp(-x**2-(y/.75)**2)5 pl=mlab.surf(x,y,z,warp_scale=2)6 mlab.axes(xlabel='x',ylabel='y',zlabel='z')7 mlab.outline(pl)8 mlab.show()
其中,
第1、2行:導(dǎo)入numpy和mayavi可視化庫;
第3行:劃分自變量x和y的范圍(都是-2到2)和間隔(分成160等份),將區(qū)域柵格化
第4行:計(jì)算每個(gè)(x,y)組合對應(yīng)的z的值,在numpy里,只需要一句話,它會(huì)自動(dòng)生成一個(gè)numpy數(shù)組,保存每個(gè)自變量對應(yīng)的函數(shù)值
第5行:創(chuàng)建一個(gè)mlab.surf對象,用于將數(shù)據(jù)顯示為曲面效果,將x,y,z作為參數(shù)
第6行:設(shè)置三個(gè)坐標(biāo)軸的標(biāo)簽
第7行:為顯示區(qū)域添加外框線
第8行:顯示在屏幕上
短短8行,就能得到以下效果:
python,就是這么厲害!
ps:系數(shù)4/3是為了調(diào)整y方向的縮放比例,讓畫面更有沖擊力,你懂的
總結(jié)
以上是生活随笔為你收集整理的python三维建模可视化_用Python三维可视化-一个神奇的函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: web前端(HTML的CSS样式和Jav
- 下一篇: 8. python基础之基础数据类型--