This article discusses on how data plotting can be improved.
There are various programs out there, each has it's own pros and cons:
-   gtkwave: a great viewer for digital simulation data 
-   gwave: analog waveform viewer 
-   KJWaves: simulation frontend with plotting window 
-  buildin plotting functions in ngspice 
-  gnuplot / octave / scipy / ... or similar programs as postprocessing script languages 
-  ... 
There have been various suggestions on the mailing lists about the feature a plotting program could have:
-  postprocessing: integrate, add, diff, fft, ... 
-  view, examine: cursors, multiple windows, ... 
-  data import, file format: circuit simulation data (gnucap, spice, ...)  hdf5 , measured data from oscilloscopes, spectrum analysers, ... 
-  data export, file format: hdf5, pictures (png, ps, ...), ascii 
-  communication backends: dbus, ... 
-  extension/scripting language 
 
Are there any programs out there that can show and postprocess simulation data?
If yes, how can they be extended to work as a waveform viewer for the simulators (gnucap, ngspice)?
 
Some vague notes on how a new plotting application could be written.
This notes currently relate on python as programming language.
-  the GUI could be created with libglade 
-  the data storage format could be  hdf5 , maybe together with pytables 
-  the plotting engine could be  matplotlib (png, ps export included) 
-  postprocessing could be done with  scipy 
-  the scripting language is python. Thus import filter to hdf5 can easily be written. Even an integrated python shell would be possible. Seen on  MayaVi 2 
Disadvantage: This configuration has a huge rucksack of additional required packages.
Update
There are now some programs out there, that use the python, numpy, matplotlib tool chain:
-  oscopy: http://repo.or.cz/w/oscopy.git 
-  dataplot: http://www.h-renrew.de/h/dataplot/dataplot.html, http://repo.or.cz/w/dataplot.git 
-  gsim: http://kiwiki.fmtnuni.sk/mediawiki/index.php/Description_of_gsim