Viper(1) the simple FEniCS run-time plotter


viper [OPTIONS]


Viper is a minimalistic scientific plotter and run-time visualization module. Some its the features includes:

* Light-weight and minimalistic
* Extended keybindings
* Interactive
* Save as png, VTK
* 2D and 3D
* Scalar, vector, and displacement fields
* Multiple input formats
* In PyCC mode; direct plotting of NumPy arrays over DOLFIN meshes
* Can be used as standalone plotting application, or used as part of


-h, --help
Display help text and exit.
-i file, --input file
Specify input file.
-o file, --output file
Specify output file.
-l lut file, --lut lut file
Specify lookup table (LUT) file.
-d data file, --data data file
Specify data file.


Viper has support for visualizing meshes and solutions in DOLFIN:

       from dolfin import *

       # Plot a mesh

       mesh = UnitCube(16, 16, 16)


       # Plot a scalar function

       u = Function("poisson.xml")


       # Plot a vector function as a displacement field

       d = Function("elasticity.xml")

       plot(d, mode="displacement")

       # Save as png

       p = plot(mesh)


       # Save as VTK

       p = plot(u)



Send comments, questions, bug reports etc. to [email protected].


This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see <>.


Ola Skavhaug <[email protected]>

This manual page was written by Johannes Ring <[email protected]>.