Solved – Recommended visualization libraries for standalone applications

data visualizationsoftware

Which visualization libraries (plots, graphs, …) would you suggest to use in a standalone application (Linux, .Net, Windows, whatever). Reasonable performance would be nice as well.

Best Answer

The Visualization Tool Kit VTK is pretty impressive for 3D visualizations of numerical data. Unfortunately, it is also pretty low level.

Graphviz is used pretty extensively for visualizing graphs and other tree-like data structures.

igraph can also be used for visualization of tree-like data structures. Contains nice interfaces to scripting languages such as R and Python along with a stand-alone C library.

The NCL (NCAR Command Language) library contains some pretty neat graphing routines- especially if you are looking at spatially distributed, multidimensional data such as wind fields. Which makes sense as NCAR is the National Center for Atmospheric Research.

If you are willing to relax the executable requirement, or try a tool like py2exe, there is the possibility of leveraging some neat Python libraries and applications such as:

  • MayaVi: A higher level front-end to VTK developed by Enthought.

  • Chaco: Another Enthought library focused on 2D graphs.

  • Matplotlib: Another 2D plotting library. Has nice support for TeX-based mathematical annotation.

  • Basemap: An add-on to Matplotlib for drawing maps and displaying geographic data (sexy examples here).

If we were to bend the concept of "standalone application" even further to include PDF files, there are some neat graphics libraries available to LaTeX users:

  • Asymptote can generate a variety of graphs, but its crown jewel is definitely the ability to embed 3D graphs into PDF documents that can be manipulated (zoomed, rotated, animated, etc) by anyone using the Adobe Acrobat reader (example).

  • PGF/TikZ provides a wonderful vector drawing language to TeX documents. The manual is hands-down the most well-written, comprehensive and beautiful piece of documentation I have ever seen in an open source project. PGFPlots provides an abstraction layer for drawing plots. A wondeful showcase can be found at TeXample.

  • PSTricks served as an inspiration for TikZ and allows users to leverage the power of the PostScript language to create some neat graphics.

And for kicks, there's DISLIN, which has a native interface for Fortran! Not open source or free for commercial use though.