The reread command causes the current gnuplot command file, as specified by a load command or on the command line, to be reset to its starting point before further commands are read from it. This essentially implements an endless loop of the commands from the beginning of the command file to the reread command. (But this is not necessarily a disaster — reread can be very useful when used in conjunction with if.) The reread command has no effect if input from standard input.


Suppose the file "looper" contains the commands

plot sin(x*a)
pause -1
if(a<5) reread
and from within gnuplot you submit the commands
load 'looper'
The result will be five plots (separated by the pause message).

Suppose the file "data" contains six columns of numbers with a total yrange from 0 to 10; the first is x and the next are five different functions of x. Suppose also that the file "plotter" contains the commands

c_p = c_p+1
plot "$0" using 1:c_p with lines linetype c_p
if(c_p <  n_p) reread
and from within gnuplot you submit the commands
unset key
set yrange [0:10]
set multiplot
call 'plotter' 'data'
unset multiplot
The result is a single graph consisting of five plots. The yrange must be set explicitly to guarantee that the five separate graphs (drawn on top of each other in multiplot mode) will have exactly the same axes. The linetype must be specified; otherwise all the plots would be drawn with the same type. See animate.dem in demo directory for an animated example.

Copyright 1986 - 1993, 1998, 2004 Thomas Williams, Colin Kelley
Distributed under the gnuplot license (rights to distribute modified versions are withheld).