![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page . (Learn how and when to remove these messages)
|
![]() | |
![]() A screenshot of the main window, with an example visualization | |
Developer(s) | Enthought |
---|---|
Initial release | 2019 |
Stable release | |
Repository | |
Written in | Python, VTK, wxPython/Qt |
Operating system | Linux, Mac OS X, Windows |
Available in | English |
Type | Data visualization |
License | BSD License |
Website | docs |
MayaVi is a scientific data visualizer written in Python, which uses VTK and provides a GUI via Tkinter. MayaVi was developed by Prabhu Ramachandran, is free and distributed under the BSD License. It is cross-platform and runs on any platform where both Python and VTK are available (almost any Unix, Mac OS X, or Windows). MayaVi is pronounced as a single name, "Ma-ya-vee", meaning "magical" in Sanskrit. The code of MayaVi has nothing in common with that of Autodesk Maya or the Vi text editor. [2]
The latest version of MayaVi, called Mayavi2, is a component of the Enthought suite of scientific Python programs. It differs from the original MayaVi by its strong focus on making an interactive program and a reusable component for 3D plotting in Python. Although it exposes a slightly different interface and API than the original MayaVi, it now has more features. [3] [4]
fromnumpyimportlinspace,meshgrid,array,sin,cos,pi,absfromscipy.specialimportsph_harmfrommayaviimportmlabtheta_1d=linspace(0,pi,91)phi_1d=linspace(0,2*pi,181)theta_2d,phi_2d=meshgrid(theta_1d,phi_1d)xyz_2d=array([sin(theta_2d)*sin(phi_2d),sin(theta_2d)*cos(phi_2d),cos(theta_2d)])l=3m=0Y_lm=sph_harm(m,l,phi_2d,theta_2d)r=abs(Y_lm.real)*xyz_2dmlab.figure(size=(700,830))mlab.mesh(r[0],r[1],r[2],scalars=Y_lm.real,colormap="cool")mlab.view(azimuth=0,elevation=75,distance=2.4,roll=-50)mlab.savefig("Y_%i_%i.jpg"%(l,m))mlab.show()