Visualisation
Theres probably a zillion small to large, awesome to aweful, brilliant to mind-numbing programs more or less available that more or less fit to your code, dataformat, questions and so on... So here's a short introduction to some of them, that users of this page found useful:
Free programs
-
GDL is a free IDL (Interactive Data Language) compatible incremental compiler (ie. runs IDL programs). It features full syntax compatibility with IDL 6.0.
ALL IDL language elements are supported, including: Objects, Pointers, Structs, Arrays, System variables, Common blocks, Assoc variables, All operators, All datatypes, _EXTRA, _STRICT_EXTRA and _REF_EXTRA keywords.
The file input output system is fully implemented
(Exception: For formatted I/O the C() sub-codes are not supported yet)
netCDF files are fully supported.
HDF5 files are partially supported.
Overall more than 250 library routines are implemented. For a sorted list enter HELP,/LIB at the command prompt and look for library routines written in GDL in the src/pro subdirectory.
The WRITEFITS procedure and the READFITS function from the IDL Astronomy User's Library compile and run under GDL.
Graphical output is partially implemented. The PLOT, OPLOT, PLOTS, XYOUTS, SURFACE, TVRD and TV commands (along with WINDOW, WDELETE, SET_PLOT, WSET, TVLCT) work (important keywords, some !P system variable tags and multi-plots are supported) for X windows, z-buffer and postscript output.
GDL has an interface to python (python routines can be called from GDL).
GDL can be build as a pyhton module (GDL subroutines can be called from python).
No GUI support (widgets) is implemented so far.
GDL is free software licensed under the GPL.
-
Gnuplot is a portable command-line driven interactive data and function plotting utility for UNIX, IBM OS/2, MS Windows, DOS, Macintosh, VMS, Atari and many other platforms. The software is copyrighted but freely distributed (i.e., you don't have to pay for it). It was originally intended as to allow scientists and students to visualize mathematical functions and data. It does this job pretty well, but has grown to support many non-interactive uses, including web scripting and integration as a plotting engine for third-party applications like Octave. Gnuplot has been supported and under development since 1986.
Gnuplot supports many types of plots in either 2D and 3D. It can draw using lines, points, boxes, contours, vector fields, surfaces, and various associated text. It also supports various specialized plot types.
Gnuplot supports many different types of output: interactive screen terminals (with mouse and hotkey functionality), direct output to pen plotters or modern printers (including postscript and many color devices), and output to many types of file (eps, fig, jpeg, LaTeX, metafont, pbm, pdf, png, postscript, svg, ...) Gnuplot is easily extensible to include new devices. Recent additions include interactive terminals based on aquaterm (OSX) and wxWidgets (multiple platforms).
-
IFrIT is a powerful tool that can be used to visualize 3-dimensional data sets. IFrIT is written in C++ and is based on the state-of-the-art Visualization ToolKit (VTK) and, optionally, uses a GUI toolkit Qt. VTK is public domain and Qt is open source for all platforms (including Windows).
IFrIT has its origins (and hence name) in a specialized utility designed to visualize ionization fronts in cosmological numerical simulations. But IFrIT has outgrown its origins and now can visualize general data sets as well.
IFrIT is similar in its capabilities to the commercially available products like Amira or AVS, but is based on a different philosophy. Most of the commercial products allow you to construct a pipeline of your visualization process. The pipeline model gives you a lot of flexibility, but this flexibility comes at a price of having to construct a pipeline even for simple visualizations. IFrIT, instead, limits your flexibility somewhat by giving you only a fixed set of widget controls, but then you can accomplish very complicated visualizations with IFrIT with only a few mouse clicks.
-
MayaVi is a free, easy to use scientific data visualizer. It is written in Python and uses the amazing Visualization Toolkit (VTK) for the graphics. It provides a GUI written using Tkinter. MayaVi is free and distributed under the conditions of the BSD license. It is also cross platform and should run on any platform where both Python and VTK are available.
-
OpenDX is a uniquely powerful, full-featured software package for the visualization of scientific, engineering and analytical data: Its open system design is built on familiar standard interface environments. And its sophisticated data model provides users with great flexibility in creating visualizations.
-
ParaView is an application designed with the need to visualize large data sets in mind. The goals of the ParaView project include the following:
- Develop an open-source, multi-platform visualization application.
- Support distributed computation models to process large data sets.
- Create an open, flexible, and intuitive user interface.
- Develop an extensible architecture based on open standards.
ParaView runs on distributed and shared memory parallel as well as single processor systems and has been succesfully tested on Windows, Linux and various Unix workstations and clusters. Under the hood, ParaView uses the Visualization Toolkit as the data processing and rendering engine and has a user interface written using a unique blend of Tcl/Tk and C++.
-
PMViewer is an interactive, fast visualisation tool for N-body simulations data. It can visualize Haloes to check halo finder algorithms.
-
Salsa is a parallel, interactive analysis tool. It's composed of two pieces, a server running in parallel on the back end, and a Java client running on your local machine. Our current implementation uses some script hackery to automagically start and connect to the server when you fire up the client.
-
The developement of TIPSY was motivated by the need to quickly display and analyze the results of N-body simulations. Most data visualization packages are designed for the display of gridded data, and hence are unsuitable for use with particle data. Therefore, a special package was built that could easily perform the following functions:
- Display particle positions (as points), and velocities (as line segments) from an arbitrary viewpoint.
- Zoom in to a chosen position. Due to their extremely clustered nature, structure of interest in an N-body simulation is often so small that it can not be seen when looking at the simulation as a whole.
- Color particles to display scalar fields. Examples of such fields are potential energy, or for SPH particles, density and temperature.
- Selection of a subset of the particles for display and analysis. Regions of interest are generally small subsets of the simulation.
- Following selected particles from one timestep to another.
- Finding cumulative properties of a collection of particles. This usually involves just a sum over the particles.
-
VAPOR is the Visualization and Analysis Platform for Ocean, Atmosphere, and Solar Researchers.
It provides ...
- A visual data discovery environment tailored towards the specialized needs of the geosciences CFD community
- A desktop solution capable of handling terascale size data sets
- Advanced interactive 3D visualization tightly coupled with quantitative data analysis
- Support for multi-variate, time-varying data
- Close coupling with RSI's powerful interpretive data language, IDL.
VAPOR runs on most UNIX and Windows systems equipped with modern 3D graphics cards.
-
VisIt is a free interactive parallel visualization and graphical analysis tool for viewing scientific data on Unix and PC platforms. Users can quickly generate visualizations from their data, animate them through time, manipulate them, and save the resulting images for presentations. VisIt contains a rich set of visualization features so that you can view your data in a variety of ways. It can be used to visualize scalar and vector fields defined on two- and three-dimensional (2D and 3D) structured and unstructured meshes. VisIt was designed to handle very large data set sizes in the terascale range and yet can also handle small data sets in the kilobyte range.
-
VisIVO is a OPEN SOURCE visualisation and analysis software for astrophysical data. VisIVO can handle both observational and theoretical data. It can be used both as a stand-alone application, that acts on local files, and as an interface to the Virtual Observatory framework, from which it can retrieve the data.
-
PDL ("Perl Data Language") gives standard Perl the ability to compactly store and speedily manipulate the large N-dimensional data arrays which are the bread and butter of scientific computing.
PDL turns perl in to a free, array-oriented, numerical language similar to (but, we believe, better than) such commerical packages as IDL and MatLab. One can write simple perl expressions to manipulate entire numerical arrays all at once. For example, using PDL the perl variable $a can hold a 1024x1024 floating point image, it only takes 4MB of memory to store it and expressions like $a=sqrt($a)+2 manipulate the whole image in a few milliseconds.
A simple interactive shell (perldl) is provided for use from the command line and a module (PDL) for use in perl scripts.
The PDL distribution for Perl is free Software and provides extensive numerical and semi-numerical functionality with support for two- and three-dimensional visualisation as well as a variety of I/O formats. The goal is to allow PDL to interact with a variety of external numerical packages, graphics and visualisation systems. Easy interfacing to such systems is one of the core design features of PDL.
-
The ROOT system provides a set of OO frameworks with all the functionality needed to handle and analyse large amounts of data in a very efficient way. Having the data defined as a set of objects, specialised storage methods are used to get direct access to the separate attributes of the selected objects, without having to touch the bulk of the data. Included are histograming methods in 1, 2 and 3 dimensions, curve fitting, function evaluation, minimisation, graphics and visualization classes to allow the easy setup of an analysis system that can query and process the data interactively or in batch mode.
Thanks to the builtin CINT C++ interpreter the command language, the scripting, or macro, language and the programming language are all C++. The interpreter allows for fast prototyping of the macros since it removes the time consuming compile/link cycle. It also provides a good environment to learn C++. If more performance is needed the interactively developed macros can be compiled using a C++ compiler.
The system has been designed in such a way that it can query its databases in parallel on MPP machines or on clusters of workstations or high-end PC's. ROOT is an open system that can be dynamically extended by linking external libraries. This makes ROOT a premier platform on which to build data acquisition, simulation and data analysis systems.
-
The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization used by thousands of researchers and developers around the world. VTK consists of a C++ class library, and several interpreted interface layers including Tcl/Tk, Java, and Python. Professional support and products for VTK are provided by Kitware, Inc. VTK supports a wide variety of visualization algorithms including scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques such as implicit modelling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. In addition, dozens of imaging algorithms have been directly integrated to allow the user to mix 2D imaging / 3D graphics algorithms and data. The design and implementation of the library has been strongly influenced by object-oriented principles. VTK has been installed and tested on nearly every Unix-based platform, PCs (Windows 98/ME/NT/2000/XP), and Mac OSX Jaguar or later.
-
Graphics hardware support is utilized to display even very large data sets at interactive speed. Automatic and interactive segmentation tools support processing of 3D image data. Reconstruction algorithms make it easy to create polygonal models from segmented objects.
In addition, true volumetric tetrahedral meshes can be generated, suitable for advanced finite-element simulations. Simulation results as well as other data defined on a variety of different grids can be investigated using a large set of powerful visualization methods.
-
AVS offers several tools for visualisation, data analysis and code development.
-
IDL is a software for data analysis, visualization, and cross-platform application development. IDL combines all of the tools you need for any type of project, from "quick-look," interactive analysis and display to large-scale commercial programming projects.
-
IGOR Pro is an interactive software environment for experimentation with scientific and engineering data and for the production of publication-quality graphs and page layouts. IGOR has been used by tens of thousands of technical professionals since its introduction in 1989.
-
MATLAB is a high-level language and interactive environment that enables
you to perform computationally intensive tasks faster than with traditional programming languages such as C, C++, and Fortran.
-
TecPlot provides several software packages for visualisation of CFD data.
|