mayavi2 - Man Page

A scientific visualization package for 2-D and 3-D data

Synopsis

mayavi2 [options] [args]

Where arg1, arg2 etc​. are optional file names that correspond to saved Mayavi2 visualizations (filename​.mv2),  Mayavi2 scripts (filename​.py) and any data file formats that Mayavi supports​.

Description

Mayavi2 is a tool for 2-D and 3-D scientific visualization​. Features of Mayavi2 include:

Options

-h
This prints all the available command line options and exits​.  Also available through --help​.
-V
This prints the Mayavi version on the command line and exits​.  Also available through --version​.
-z filename​.mv2
This loads a previously saved Mayavi2 visualization​.  Also available through --viz filename​.mv2 or --visualization filename​.mv2​.
-d
datafile​.*

Opens any of the supported data file formats or a non-file related data source​.  This includes VTK file formats (*​.vtk, *​.xml, *​.vt[i,p,r,s,u], *​.pvt[i,p,r,s,u]), VRML2 (*​.wrl), 3D Studio (*​.3ds), PLOT3D (*​.xyz), STL, BYU, RAW, PLY, PDB, SLC, FACET, OBJ, AVSUCD (*​.inp), GAMBIT (*​.neu), Exodus (*​.exii), PNG, JPEG, BMP, PNM, DCM, DEM, MHA, MHD, MINC, XIMG, TIFF, and various others that are supported​.  datafile​.* can also be a source object not associated with a file, for example ParametricSurface or PointLoad will load the corresponding data sources into Mayavi​.  Also available through --data​.

-m
module-name

A module is an object that actually visualizes the data​.  The given module-name is loaded in the current ModuleManager​.  The module name must be a valid one if not you will get an error message​.

If a module is specified as 'package​.sub​.module​.SomeModule' then the module (SomeModule) is imported from 'package​.sub​.module'​.  Standard modules provided with mayavi2 do not need the full path specification​.  For example:

mayavi2 -d data​.vtk -m Outline -m m2_user_modules​.TestModule

In this example 'Outline' is a standard module  and 'm2_user_modules​.TestModule' is some user defined module​.  See Mayavi2 Modules section below for an exhaustive list of available modules​.  Also available through --module​.

-f
filter-name

A filter is an object that filters out the data in some way or the  other​.  The given filter-name is loaded with respect to the current source/filter object​.  The filter name must be a valid one if not you will get an error message​.

If the filter is specified as 'package​.sub​.filter​.SomeFilter' then the filter (`SomeFilter`) is imported from 'package​.sub​.filter'​.  Standard modules provided with mayavi2 do not need the full path specification​.  For example:

mayavi2 -d data​.vtk -f ExtractVectorNorm -f m2_user_filters​.TestFilter

In this example 'ExtractVectorNorm' is a standard filter  and 'm2_user_filters​.TestFilter' is some user defined filter​.

See Mayavi2 Filters section below for an exhaustive list of available filters​. Also available through --filter​.

-M
Starts up a new module manager on the Mayavi pipeline​. Also available through --module-mgr​.
-n
Creates a new window/scene​. Any options passed after this will apply to this newly created scene​.  Also available through --new-window​.
-t
Runs the mayavi2 test suite and exits​.  If run as such, this runs both the TVTK and Mayavi2 unittests​.  If any additional arguments are passed they are passed along to the test runner​.  So this may be used to run other tests as well​.  For example:

mayavi2 -t enthought​.persistence

This will run just the tests inside the enthought​.persistence package​.  You can also specify a directory with test files to run with this, for example:

mayavi2 -t relative_path_to/integrationtests/mayavi

will run the integration tests from the mayavi sources.   Also available through --test​.

-x
script-file

This executes the given script in a namespace where we guarantee that  the name 'mayavi' is Mayavi's script instance -- just like in the embedded Python interpreter​.  Also available through --exec

WARNING: Note that this uses `execfile`, so please note that this can be dangerous if the script does something nasty!

-s
python-expression

Execute the expression on the last created object​.  For example, if the previous object was a module, and we want to set the color of that object one can do -s "actor​.property​.color = (1,0,0)".  One should use quotes for the expression. Also available with --set​.  For example:

mayavi2 -d ParametricSurface -m Outline \
-s "actor​.property.color = (1,0,0)" \
-s "scene.save('test​.png', size=(800, 800))"

WARNING: Note that this uses `exec`, so please note that this can be dangerous!

Mayavi2 Modules

Axes

Draws simple axes​.

ContourGridPlane

A contour grid plane module​. This module lets one take a slice of input grid data and view contours of the data​.

CustomGridPlane

A custom grid plane with a lot more flexibility than GridPlane module​.

DataSetClipper

This filter clips the dataset in a area.  The area can be defined interactively as a box, a sphere...

Glyph

Displays different types of glyphs oriented and colored as per scalar  or vector data at the input points​.

GridPlane

A simple grid plane module​.

HyperStreamline

A module that integrates through a tensor field to generate a  hyperstreamline​. The integration is along the maximum eigenvector and the cross section of the hyperstreamline is defined by the two other  eigenvectors​. Thus the shape of the hyperstreamline is "tube-like", with the cross section being elliptical. Hyperstreamlines are used to visualize tensor fields​.

ImageActor

A simple module to view image data efficiently​.

ImagePlaneWidget

A simple module to view image data​.

IsoSurface

A module that allows the user to make contours of input point data​.

Labels

Allows a user to label the current dataset or the current actor of the  active module​.

OrientationAxes

Creates a small axes on the side that indicates the position of the co-ordinate axes and thereby marks the orientation of the scene​. Requires VTK-4​.5 and above​.

Outline

A module that draws an outline for the given data​.

ScalarCutPlane

Takes a cut plane of any input data set using an implicit plane and plots the data with optional contouring and scalar warping​.

SliceUnstructuredGrid

This module takes a slice of the unstructured grid data and shows the  cells that intersect or touch the slice​.

Streamline

Allows the user to draw streamlines for given vector data​. This supports various types of seed objects (line, sphere, plane and point seeds)​. It also allows the user to draw ribbons or tubes and further supports different types of interactive modes of calculating the streamlines​.

StructuredGridOutline

Draws a grid-conforming outline for structured grids​.

Surface

Draws a surface for any input dataset with optional contouring​.

TensorGlyph

Displays tensor glyphs oriented and colored as per scalar or vector data at  the input points​.

Text

This module allows the user to place text on the screen​.

VectorCutPlane

Takes an arbitrary slice of the input data using an implicit cut plane  and places glyphs according to the vector field data​. The glyphs may be colored using either the vector magnitude or the scalar attributes​.

Vectors

Displays different types of glyphs oriented and colored as per vector  data at the input points​. This is merely a convenience module that is entirely based on the Glyph module​.

Volume

The Volume module visualizes scalar fields using volumetric  visualization techniques​.

WarpVectorCutPlane

Takes an arbitrary slice of the input data using an implicit cut plane  and warps it according to the vector field data​. The scalars are displayed on the warped surface as colors​.

Mayavi2 Filters

CellDerivatives

Computes derivatives from input point scalar and vector data and  produces cell data on the gradients​.  Can be used to approximately calcuate the vorticity for example​.

CellToPointData

Transforms cell attribute data to point data by averaging the cell  data from the cells at the point​.

Contour

A contour filter that wraps around the Contour component to generate  iso-surfaces on any input dataset​.

CutPlane

This class represents a cut plane that can be used to slice through any  dataset​.  It also provides a 3D widget interface to position and move the slice interactively​.

ElevationFilter

Creates scalar data corresponding to the elevation of the points along a  line​.

Delaunay2D

Performs a 2D Delaunay triangulation​.

Delaunay3D

Performs a 3D Delaunay triangulation​.

ExtractEdges

This filter extracts cell edges from any input data​.

ExtractGrid

Allows a user to select a part of a structured grid​.

ExtractTensorComponents

Wraps the TVTK ExtractTensorComponents filter to extract components from  a tensor field​.

ExtractUnstructuredGrid

Allows a user to select a part of an unstructured grid​.

ExtractVectorNorm

Computes the norm (Eucliedean) of the input vector data (with optional scaling between [0, 1])​. This is useful when the input data has vector input but no scalar data for the magnitude of the vectors​.

ExtractVectorComponents

Wraps the TVTK ExtractVectorComponents filter to extract components of a vector​. This is useful for analysing individual components of a vector data​.

GaussianSplatter

This filter splat points into a volume with an elliptical, Gaussian distribution​.

MaskPoints

Selectively passes the input points downstream​. This can be used to subsample the input points. Note that this does not pass geometry data, this means all grid information is lost​.

GreedyTerrainDecimation

Approximates a height field (image data) with a triangle mesh, keeping the  number of triangles minimum​.

ImageChangeInformation

A filter that can be used to change the origin, spacing and extents of an input image dataset without changing the data itself​.

ImageDataProbe

A filter that can be used to probe any dataset using a Structured Points  dataset​.  The filter also allows one to convert the scalar data to an unsigned short array so that the scalars can be used for volume  visualization​.

PointToCellData

Does the inverse of the CellToPointData filter​.

PolyDataNormals

Computes normals from input data​. This gives meshes a smoother appearance​. This should work for any input dataset​. Note: this filter is called "Compute Normals" in Mayavi2 GUI (Visualize/Filters/Compute Normals)​.

QuadricDecimation

Reduce triangles in a mesh, forming a good approximation of the original  mesh​.

SelectOutput

A filter that allows a user to select one among several of the outputs  of a given input.  This is typically very useful for a multi-block data  source​.

SetActiveAttribute

This filter lets a user set the active data attribute (scalars, vectors  and tensors) on a VTK dataset​.  This is particularly useful if you need to do something like compute contours of one scalar on the contour  of another scalar​.

Stripper

Create triangle strips and/or poly-lines. Useful for regularizing broken up surfaces, such as those created by the Tube filter. ​.

Threshold

A simple filter that thresholds on input data​.

TransformData

Performs a linear transformation to input data​.

TriangleFilter

Converts input polygons and triangle strips to triangles using  the tvtk​.TriangleFilter class​.  This is useful when you have a downstream filter that only processes triangles​.

Tube

Turns lines into tubes​.

UserDefined

This filter lets the user define their own filter  dynamically/interactively​.  It is like FilterBase but allows a user to specify the class without writing any code​.

Vorticity

This filter computes the vorticity of an input vector field​.  For convenience, the filter allows one to optionally pass-through the given input vector field​.  The filter also allows the user to show the component of the vorticity along a particular cartesian co-ordinate axes​.  It produces point data on output which is ready to visualize​.

WarpScalar

Warps the input data along a particular direction (either the normals or a specified direction) with a scale specified by the local scalar value​. Useful for making carpet plots​.

WarpVector

Warps the input data along a the point vector attribute scaled as per  a scale factor​.  Useful for showing flow profiles or displacements​.

Examples

mayavi2 -d heart​.vtk -m Axes -m Outline -m GridPlane -m ContourGridPlane -m IsoSurface
mayavi2 -d fire_ug​.vtu -m Axes -m Outline -m VectorCutPlane -f MaskPoints -m Glyph

In the above examples, heart​.vti and fire_ug​.vtu VTK files can be found in /usr/share/doc/mayavi2/examples/data​. The examples directory (/usr/share/doc/mayavi2/examples/ on Debian) provides several useful examples​.

Author

Mayavi was originally developed by Prabhu Ramachandran.  Many people have later contributed to it.

More information on Mayavi2 can be obtained from http://code​.enthought​.com/mayavi2