MayaVi

(Learn how and when to remove this message)
A screenshot of the main window, with an example visualization
Developer(s)Enthought
Initial release2019; 5 years ago (2019)
Stable release
4.8.1 / October 18, 2022; 19 months ago (2022-10-18)[1]
Written inPython, VTK, wxPython/Qt
Operating systemLinux, Mac OS X, Microsoft Windows
Available inEnglish
TypeData visualization
LicenseBSD License
Websitedocs.enthought.com/mayavi/mayavi/

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]

Major features

Examples

Spherical harmonics

The spherical harmonic function Y 3 0 ( θ , φ ) {\displaystyle Y_{3}^{0}(\theta ,\varphi )}
from numpy import linspace, meshgrid, array, sin, cos, pi, abs
from scipy.special import sph_harm
from mayavi import mlab

theta_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 = 3
m = 0

Y_lm = sph_harm(m, l, phi_2d, theta_2d)
r = abs(Y_lm.real) * xyz_2d

mlab.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()

References

  1. ^ "mayavi · PyPI". pypi.org. Retrieved 2023-11-28.
  2. ^ "MayaVi project page". SourceForge.
  3. ^ "MayaVi2 wiki page".
  4. ^ "MayaVi2 project page".

External links

  • v
  • t
  • e
Scientific software in Python