Phlip said:
I googled. This topic is a pain in the nuts for C++.
I won't dispute that.
The best package
I ever auditioned, after 15 years of researching this very topic, was
BLT with the Python wrapper. That forsakes C++ (which you don't
need), but I could not install BLT on Win32 the last time I tried.
From there, here are the various problems:
- GNUplot - static output, not interactive. Good for books
<shameless Gnuplot plug>
1) It's Gnuplot, not GNUplot (nothing whatsoever to do with the GNU project, is not GPL'd, although it is open source).
See <
http://www.gnuplot.info/> for more detail.
2) Not sure what "static output" means.
3) It is certainly (as of the last few releases) interactive, featuring zooming, (auto)scaling, rotation (of 3D plots),
multi-plotting of series on common axis, etc. It has a /very/ extensive set of interactive commands for labelling, keys,
colours, data transformation, you name it (doesn't do scrolling, though, IIRC).
4) The nearest it has to a "programmatic interface" is that it accepts piped commands, if your OS supports pipes. This
can be pretty powerful - eg. it is deployed in this way as the plotting interface for the Octave numerical package
<
http://www.octave.org/>.
5) It is capable of output to a range of "terminals" (read: graphics devices/image formats).
6) It is in very wide use (particularly in scientific circles), supported on many platforms, is actively developed and
has a large and responsive user community; support (via the newsgroup) is excellent.
I too have tried a range of free/non-free plotting alternatives, but keep coming back to Gnuplot.
</shameless Gnuplot plug>