The only way that the display list can be plotted is by an invocation of the function draw3. The user
may control when this function gets called. To have a new plot appear totally under user control, set
_draw3 to 0 (i. e., execute set_draw3_(0)) and then call draw3 only when you want the plot to
appear. To have a plot appear automatically after each plot command is given, _draw3 should be set
to 1 and the idler should be set to some function which calls draw3. The details are in ``The variable
_draw3 and the idler'' on page
.
[lims = ] draw3 ( [called_as_idler = <val>]) limits (lims [0], lims [1], lims [2], lims [3])
draw3 traverses the display list and executes each function on the list with the list
of arguments supplied. Assuming that the list is not empty, this means that the frame specified by this
list will be displayed. If the parameter called_as_idler is present and is nonzero, then a fma
(frame advance) call will be made first, meaning that the current display will be erased before the new
one is plotted. Otherwise the new display will appear on top of the old.
draw3 always attempts to return a list of four items [xmin, xmax, ymin, ymax] which give
the maximum and minimum of the x and y coordinates actually plotted to the PyGist window. Calling
the limits function with these four values as limits will scale the graph properly. One could also perform
computations with these limits (for example, to force x and y to the same scale, or to shrink the
graph a little to force it well inside the borders of the window). If you like the way your graphs look,
then there is no reason to deal with these numbers.
We apologize for this messy kludge; we have encountered timing problems and other difficulties with the Gist limits calculating process which we have not been able to solve except by computing our own limits.