Gnuplot gets iterators
Nov 10, 2008Whilst looking at the gnuplot website, I discovered the demo page, which shows, amongst other things, new features in the CVS version.
The main that caught my eye was the plot on the right, which shows a few overlaid sinusoids, with the code used to generate them as the key. Here’s the code:
plot for [n=2:10] sin(x*n)/n with filledcurves
That’s right, one line for 8 plots! Version 4.3 of gnuplot introduces the for
keyword, which lets you sweep through numerical parameters and loop through strings. The help (see help iteration
with 4.3) has a few examples, which I’ve copied in below:
plot for [filename in "A.dat B.dat C.dat"] filename using 1:2 with lines
plot for [basename in "A B C"] basename.".dat" using 1:2 with lines
set for [i = 1:10] style line i lc rgb "blue"
unset for [tag = 100:200] label tag
I downloaded and compiled the sources and whipped up a quick example of my own (I couldn’t get aquaterm going though). You can see it below:
I’ve got preliminary support going in the Gnuplot TextMate bundle, but I’m still not 100% happy with it yet.