6. Graphics and Visualization
Gnuplot Gnuplot is a command-line driven interactive function plotting utility. It handles both curves (2 dimensions) and surfaces (3 dimensions). Surfaces can be floating in the 3-d coordinate space, or as a contour plot. For 2-d plots, there are also many plot styles, including lines, points, lines with points, error bars, and impulses. Graphs may be labeled with arbitrary labels and arrows, axes labels, a title, date and time, and a key. It has multiple plotting capabilities too. It allows saving the graphs in various formats which can be included in word processors. It can be used to generate publication quality plots.
NCAR Graphics A very popular graphics package which is very well documented and widely used. It provides basic ingredients for creating complex plots as functions / routines that can be called from Fortran and C. There is a contributed programming interface to the NCAR Graphics package: NCL (NCAR Command Language). The programming interfaces provide access to complex graphics utilities like contouring, world map projections, and velocity vectors. For the most part, the C interface is built on top of the Fortran interface... It is distributed under the GNU public license. Click here for going to the documentation of all its various components.
OpenDX A very good Open Source Data eXplorer. It can handle large amounts of data and creates great visualizations. It was the tool I stumbled upon when I wanted a free graphics routine to make 3-D plots and zoom-in, rotate, and really eXplore the output Data from my codes. The downside is that compiling from source is really challenging and getting started is a difficult. However it has excellent documentation distributed with it and once I started off it was the best tool I have ever used.
Gri: It is a language for scientific graphics programming. The claim that Gri is similar to LaTeX in the sense that both provide extensive power as a reward for tolerating a learning curve seems exciting and I for one want to check this out!! Check out the following article in The Linux Journal. Go to the gri home page if you are now impressed by it and check out download info and manuals.
MayaVi: A scientific data visualizer written in Python. It is distributed under the BSD license. The screenshots look promising. Check out the above link for more details.
PGPLOT: PGPLOT is a Fortran 77 or C callable subroutine package for drawing scientific 2D and Simple 3D plots. One can call these routines during runtime and redirect the output to a variety of devices at run time. It is well documented and the full documentation is available at the above site. It is Free for Non-Commercial Use. A user manual is available online at PGPLOT Users Manual
PLplot: This is a library of scientific plotting functions that can be called from C, C++, FORTRAN, TCL, PYTHON. PLplot features as described in the above link are, "It can be used to create standard x-y plots, semilog plots, log-log plots, contour plots, 3D plots, mesh plots, bar charts and pie charts. Multiple graphs (of the same or different sizes) may be placed on a single page with multiple lines in each graph. There are almost 2000 characters in the extended character set. This includes four different fonts, the Greek alphabet and a host of mathematical, musical, and other symbols. A variety of output devices are supported and new devices can be easily added by writing a small number of device dependent routines". To download click here .
Grace Grace is a WYSIWYG 2D plotting tool for the X Window System and Motif. Grace runs on practically any version of Unix. Grace is a descendant of ACE/gr, also known as Xmgr. It is lisenced under the GNU public license. This link also has a tutorial and download information.
SciGraphica SciGraphica is a application for data analysis and technical graphics. It fully supplies plotting features for 2D, 3D and polar charts. The aim is to obtain a fully-featured, cross-platform, user-friendly, self-growing scientific application. It is free and open-source, released under the GPL license.
Plotutils: The GNU plotutils package contains software for both programmers and technical users. Its centerpiece is libplot.a powerful C/C++ function library for exporting 2-D vector graphics in many file formats, both vector and raster. It can also do vector graphics animations. Besides libplot, the package contains command-line programs for plotting scientific data. Many of them use libplot to export graphics.
DISLIN DISLIN is a high-level plotting library for displaying data as curves, polar plots, bar graphs, pie charts, 3D-color plots, surfaces, contours and maps.
ImLib3D ImLib3D is an open source C++ library for 3D (volumetric) image processing. It contains most basic image processing algorithms, and some more sophisticated ones. It comes with an optional viewer that features multi-planar views, animations, vector field views and 3D (OpenGL) multi-planar.
Ptplot: Ptplot is a 2D data plotter and histogram tool implemented in Java. Ptplot can be used as a standalone applet or application, or it can be embedded in your own applet or application.