科學計算三維可視化---Mayavi入門(Mayavi庫的基本元素和繪圖實例)


 一:Mayavi庫的基本元素

1.處理圖形可視化和圖形操作的mlab模塊
2.操作管線對象,窗口對象的api

(一)mlab模塊

(二)mayavi的api

二:快速繪圖實例

(一)mlab.mesh的使用,快速創建繪圖

>>> x = [[-1,1,1,-1,-1],[-1,1,1,-1,-1]]  
>>> y = [[-1,-1,-1,-1,-1],[1,1,1,1,1]]
>>> z = [[1,1,-1,-1,1],[1,1,-1,-1,1]]
>>> from mayavi import mlab
>>> s = mlab.mesh(x,y,z)
x,y,z數組對應坐標的元素組成了三維坐標點
(-1,-1,1)
(1,-1,1)
......
(-1,1,-1)
(-1,1,1)
以上8個坐標
數組都分為2部分,一部分4點,每一部分中四個點代表一個面(空白區域)

(二)創建一個較為復雜繪圖

from numpy import pi, sin, cos, mgrid
from mayavi import mlab

#建立數據
dphi,dtheta = pi/250.0,pi/250.0
[phi,theta] = mgrid[0:pi+dphi*1.5:dphi,0:2*pi+dtheta*1.5:dtheta]
m0 = 4; m1 = 3; m2 = 2; m3 = 3; m4 = 6; m5 = 2; m6 = 6; m7 = 4;
r = sin(m0*phi)**m1 + cos(m2*phi)**m3 + sin(m4*theta)**m5 + cos(m6**theta)**m7
x = r*sin(phi)*cos(theta)
y = r*cos(phi)
z = r*sin(phi)*sin(theta)

#對該數據進行三維可視化
s = mlab.mesh(x,y,z)
mlab.show()

s = mlab.mesh(x,y,z,representation="wireframe",line_width=1.0)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM