

		PLT -- File-Oriented Plotting Utility for RT
				19-Jul-84


Introduction
------------

     PLT is now a RT-11 program that translates a user-specified text
file consisting of plotting commands into Tektronix 4662 language.  
The set of Tektronix 4662 language commands are placed into an output
file which can then be sent directly to a Retro-Graphic terminal.
The output files or .tek files can also be sent to a Data South Line 
Printer or to a HP 7475A pen plotter by running LPGPLT or HPPLT,
respectively.  
     PLT contains a specially defined character set which was created
by the program CREATE.  

Usage
-----

     The user plots his/her file by entering a command string that is of this
form:

		.RUN PLT filespec/SW1/SW2 outfile

where

	filespec  is a PLT-compatible ASCII text file.  The default file
		  extension is .PLT.

	outfile   The name of the file where the Tektronix lanuage commands
		  are written.  The default outfile name is PLT.TEK.
		  The default outfile extension is .TEK.

	/SW1/SW2  are one or more optional switches that control program
		  output.  Switches that are recognized are as follows:

		  /EC    This switch echoes each line of the input file on
			 the user's terminal.  The default condition is 
			 no echo.

		  /TT    This switch directs PLT to output the plot to
			 the user's terminal in Tektronix-compatible scope
			 format.  Use of this switch presumes that the
			 user's terminal can accept Tektronix graphics
			 code.

     Alternatively, the user may access PLT by typing

				.RUN PLT

whereupon PLT issues a prompt (plt file?) and waits for an input file
specification and switch string:

				plt file? filespec/SW1/SW2
			or
				plt file? outfile=filespec/SW1/SW2.



Plot Files
----------

     The typical input to PLT is a standard ASCII text file that contains
plotting parameters, keywords, data, and comments.  As will be shown below,
there is a modicum of flexibility with this, such that the user may obtain
data from another program, or may call another text file as a virtual
subroutine, or have PLT request parameter/data entry during execution.
     PLT files may be created by entering the text into a file manually,
using an editing program, or by writing and executing a program that
creates, writes into, and closes the file.
     The plot file has a structure that may resemble this:

XLENGTH=8                     ; Plot is 8 inches long
YLENGTH=6                     ; by 6 inches high
XMIN=0
XMAX=100
XINT=5
XLABEL=Intensity (dB SPL)
YMIN=10
YMAX=1000
YCYCLE=2
YLABEL=Estimated Loudness
GRID=yes
PLTYPE=symbols only
"Avg of 4 subjects"
DATA                          ; These are the invariant data
   10,150,.5
   20,300,.25
   50,120,0
PLOT
NEWPAGE
CALL newsetup		; This is the standard skeleton
RUN myprog <5,20,30>	; Get 5 data values, using arguments of 20 and 30
"*"			; Get a message from the keyboard
PLOT
FINISH


There are six types of lines in a plot file: comments, parameters,
messages, keywords, data values, and transfers of control.

1.  Comments

     Text following a semicolon (;) or a exclamation point (!) are internal
and external comment lines, respectively.  These are not executed by PLT.
Rather, they serve only as references for the user.  Internal comments, i.e.,
those following a semicolon, are for organizational use.  They allow the
creator to keep track of his file during editing, and they are only printed
(along with everything else) when echoing is desired.  The semicolon may
appear anywhere on the line, and anything following it on that line is
treated as an internal comment.
     External comments, i.e., those following an exclamation point, instruct
PLT to print that comment regardless of echo status or output device.  Again,
the exclamation point may appear anywhere in the line, and the external
comment is the text following it.  External comments are useful when
execution of the plot requires user intervention, for example when pens
or paper need to be changed.
     Since semicolons and exclamation points denote comments, they cannot
be used as characters in axis labels or messages.

2.  Parameters

     Parameter manipulations control the features of the plot.  It is
by altering these that the user obtains his or her desired graph.  There
are five general classes of parameters.  These are (a) axis specifications,
(b) data output control, (c) annotation control, (d) message specifications,
and (e) miscellaneous parameters.  The structure of a parameter manipulation
consists of a word, followed by an equals sign, followed by the desired
parameter value.  PLT examines only the first four characters of the
parameter, even though its full name may be longer.

  a.  Axis Specifications

     This group of parameters controls the features of three axis lines,
i.e., the X or horizontal axis, the Y or left-hand vertical axis, and the
R or right-hand vertical axis.  The parameters are as follows:

     XLENGTH

     This parameter controls the length, in inches, of the horizontal or X
axis. For an 8 1/2" x 11" page, this is the 11" dimension. This length does
not include space for annotations or axis labels. Although the user can set
XLENGTH to any value, cannot handle an X-axis length that exceeds 10.5 inches.
When this maximum is exceeded, everything occurring beyond 10.5 inches will 
not appear on the page. The default X-axis length is 6.0 inches.

     YLENGTH

     This parameter controls the length, in inches, of the vertical or Y axis
(the 8 1/2" dimension). It operates in the same manner as XLENGTH, but is
limited to 7.74 inches. The default Y-axis length is 6.0 inches. 

     XLLC

	This parameter controls the horizontal position, in inches,
of the lower left-hand corner of the plot frame on the plotted page,
i.e., this is where the X-axis begins and is where the line denoting
the Y-axis will reside.  The value of XLLC does not take into account
the position of the annotations and axis labels; rather, it only positions
the plot frame in the left-to-right dimension.  The default value is 2.2
inches from the left-hand edge of the page.

     YLLC

	This parameter controls the vertical position, in inches, of
the lower left-hand corner of the plot frame on the plotted page, i.e.,
this is where the Y-axis begins in the up-down dimension and is where
the line denoting the X-axis will reside.  The operation and default
value of YLLC is the same as for XLLC.

     XMIN and XMAX

	These parameters denote the minimum and maximum values, respect-
ively, of the X-axis.  That is, the annotated part of the X-axis will
go from XMIN to XMAX.  PLT accepts both integers and real numbers as
valid entries.  The default values are XMIN=0 and XMAX=0.  Note that
data are unplottable if the default values are used.

     YMIN and YMAX

	These parameters denote the minimum and maximum values of the
Y-axis.  The operation of these and their defaults are the same as for
XMIN and XMAX.

     RMIN and RMAX

	These parameters denote the minimum and maximum values of the
right-hand axis, when one is desired.  The operation and default values
for these are the same as for the other axes.
	It is important to note that data Y-values, when they are
plotted, are never referred to the right-hand axis:  They are always
referred to the left-hand or Y-axis limits.  The right-hand axis exists
only as a reference, and it is the user's responsibility to set it up
accordingly.  There is an indirect way to refer Y-values to the right-
hand axis, which is to (a) set up and plot one set of axes, (b) suppress
Y-axis annotations, (c) set YMIN and YMAX to the right-hand axis
values, and (d) enter and plot the data.
	It is also important to note that RMIN and RMAX must both be set
to zero if tick marks on the right-hand axis are to be the same as for the
left-hand or Y axis.


     XCYCLE, YCYCLE and RCYCLE

	These parameters, when non-zero, denote that the indicated
axis is to be logarithmic and that there are that many cycles on the
axis.  The defaults are 0.0 for all three, which means that all three
plottable axes are linear.
	Two useful features of PLT, when a logarithmic axis is to be
specified, are that (1) the user need only set the number (whole or
fractional) of cycles desired and either the minimum or maximum axis
value, and (2) the user doesn't have to compute the number of cycles
when he specifies both the minimum and maximum axis values; rather,
he needs only to make the number of cycles non-zero.  For example,
the sequences

          (1)               (2)             (3)            (4)

	XMIN=2            XMIN=2          XMIN=0         XMIN=2
	XMAX=200          XMAX=0          XMAX=200       XMAX=200
	XCYCLE=2          XCYCLE=2        XCYCLE=2       XCYCLE=1

all have the same result.  Sequence (1) defines all three parameters
in a consistent manner.  Sequences (2) and (3) have enough information
to generate the logarithmic axis.  In these cases the missing parameter
is calculated and used internally.  Sequence (4) has an inconsistency
in it, in that XCYCLE does not agree with the axis limits.  In this
case, the limits XMIN and XMAX take precedence and XCYCLE will be
corrected internally to the proper value, which is 2.
	There are two notes of caution:  First, the user should
remember, when defining only two logarithmic-axis parameters, that
the third parameter must be 0 (the default value).  If the "missing"
parameter is non-zero, perhaps having been set in processing a previous
plot frame, then incorrect and possibly disastrous results will occur.
And second, it is valid to set the number of cycles to a fractional
amount such as 2.50 or 3.10.  In the case where only XMIN or XMAX is
defined, PLT will generate the non-integral number of cycles specified.
	Finally, RCYCLE does not have to be set to 0 if no right-hand
axis is desired.

     XINT, YINT and RINT

	These parameters control the way tick marks defining intervals
on the respective (linear) axes will be done.  If the axis is logarithmic,
then the number of ticks is defined by the number of cycles, and the
number of intervals is ignored.
	The parameter value is of the form MM.N, and it defines two types
of intervals, namely "major" and "minor" intervals.  MM defines the
number of major intervals (and produces MM+1 tick marks) along the
specified axis.  Only major intervals can be annotated, and only major
intervals will generate grid lines (when a grid is desired).  N defines
the number of minor intervals per major interval (and produces N-1 tick
marks per minor interval), and it is limited to a maximum of 9.  A minor
interval is not annotated and carries no grid lines.  Major intervals
possess tick marks that are twice as long as those denoting minor intervals.
The default value for the X and Y axes is 5, and the default value for
the right-hand axis is 0.


	For example, the command line XINT=10.5 will cause the X axis
to be plotted as 10 major intervals equally spaced between XMIN and XMAX.
In addition to this, each major interval is subdivided into 5 minor
intervals, making a total of 50 intervals overall.   If XMIN=0 and
XMAX=100, then each major interval is 10 units wide and each minor interval
is 2 units wide.

     XPERCENT, YPERCENT and RPERCENT

	These parameters control the percentage of the respective axis
to use for determining where to position the limits, with the limits
being centered along the length of the axis.  Its value can vary
continuously from 0 to 100, with the default being 100 in all cases.
	For example, a designation of XPERCENT=50 cause PLT to use only
half of the axis length to plot the intervals between XMIN and XMAX, and
the tick mark denoting XMIN will be positioned one-quarter of the way
along the X axis.  In the default condition (XPERCENT=100), the entire
length of the axis is used, and XMIN appears at its left edge.

     TICDIR
	
	This parameter controls the direction that tick marks will be
plotted, i.e., inward from the axis frame, or outward from the frame.
Setting TICDIR to 0 (the default value) indicates outward ticks, and
setting it to a non-zero value indicates inward ticks.  Inward ticks
are 1.5 times longer than outward ticks.
	For convenience to users, PLT recognizes INWARD and OUTWARD
as valid entries for TICDIR.  Thus, the lines

		TICDIR=0.
		TICDIR=out
		TICDIR=OUTWARD

all have the same result.

     OPENAX

	The default plot has four sides to it.  Tick marks are placed
on all four axes, and in the case where only X- and Y-axes are defined,
the tick marks on the right and top axes are duplications of those on
the bottom (X) and left (Y) axes.  In some cases, however, it may be
advantageous to draw only the bottom and left-hand axes, leaving the
plot "open".  Setting OPENAX to a non-zero values (or to YES, yes or y)
allows the user to do this.  The user may still specify a right-hand
axis, even though OPENAX is non-zero, and the right-hand axis will appear
in its usual place, leaving only the top of the plot open.


     XLABEL, YLABEL, and RLABEL

	These parameters accept text input, and they define the labels
to be given to the respective axis.  An axis label can be up to 50
characters long, and they can have superscripted and subscripted text
as well as symbols in them.  The only differences between axis labels
and messages, described below, are that (a) an axis label must occupy
only one line and (b) axis labels are not bounded by leading and trailing
quotation marks.
	Axis labels are centered along the desired axis.  The X-axis label
is plotted below the X-axis; the Y-axis label is plotted to the left of the
Y-axis line and annotations at a 90-degree angle, i.e., with the characters
oriented upward; and R-axis label is plotted to the right of the R-axis at
a 270-degree angle, i.e., with the characters oriented in a downward
direction.

     LABSIZ

	The default label character height is computed internally by PLT,
and it is a function of the average length of the X- and Y-axis.  The user
can modify this by adjusting LABSIZ.  When LABSIZ is positive or zero, it
acts as a multiplier that operates on the default label size.  A zero value
produces no axis labels, and values greater or less than one produce
proportionately larger-than-normal or smaller-than-normal character heights
for axis labels.  When LABSIZ is negative, the internal computation of
label height is overridden, and the label character height used (in inches)
is the absolute value of LABSIZ.  For example, if the user desires labels
that are 1/2 inch tall, then he/she should set LABSIZ=-0.5 .


b.  Data Output Control

	This group of parameters determines how the specified data are to
be plotted.

     PLTYPE

	This parameter defines the plot type.  Four types of plot exist,
namely SYMBOLS ONLY (Type 1), LINES ONLY (Type 2), BOTH SYMBOLS AND LINES
(Type 3), and HISTOGRAM (Type 4).  Thus, PLTYPE only has four possible
values.  The default plot type is Type 3 (symbols plus lines).  A useful
feature of PLT is that the user can define PLTYPE with text as well as
by the numerical plot type.  For example, the commands

	PLTYPE=symbols
	PLTYPE=SYMBOL
	PLTYPE=s
	PLTYPE=1

all produce the same result.  In order to use a text argument, the user
need only provide the first letter, either upper or lower case, with
S designating "symbols only", L designating "lines only", B designating
"both symbols and lines", and H designating "histogram".
	A histogram plot will cause the data to be plotted in bar-graph
form along the X axis, using as many bars as there are data values.  Note
that empty histogram bins must be accounted for.


     LINTYPE

	This parameter defines the type of line, dashed or solid, to use
in plotting the data (when lines are specified).  Values greater than 1
designate dashed lines and determine the length of the dashes, with larger
values generating longer dashes.  A value of 1 produces dotted lines.  Solid 
lines (the default) are designated by setting LINTYPE equal to 0.

     SYMBOL

	This parameter defines the symbol number to use in plotting data
(when use of symbols is specified).  There are 16 symbols available, of which
5 are filled and 10 are open.  The default symbol is symbol #0.  The codes
for the symbols are as follows:

  Symbol Number	      Shape		Symbol Number	     Shape
  -------------    -----------		-------------	  -----------
	0          Open square		     10		  Filled square
	1	   Open circle		     11		  Filled circle
	2	   Open erect triangle	     12		  Filled erect triangle
	3	   Open inverted triangle    13		  Filled inv. triangle
	4	   Open diamond		     14		  Filled diamond
	5	   Hourglass		     15		  Filled hourglass
	6	   Asterisk
	7	   Plus sign
	8	   "Picnic table"
	9	   Up-pointing arrow

Note that numbers for filled symbols are equal to their unfilled values
plus ten, and that only five filled symbols exist.  In order to conserve
disk space, filled symbols on raster-scan devices are created artificially;
for large plots generated on raster devices by fussy users, filled symbols
may not be entirely acceptable.
	The default symbol number is 0 (open square).

     SOLID

	SOLID is a carryover from PLTFIL, where setting it to a non-zero
value caused symbols to be artificially filled.  It exists in PLT solely for
compatibility with PLTFIL.  If SOLID is non-zero, PLT will choose the
appropriate filled symbol to use, if one exists.  If none exists, either
symbol #10 or symbol #14 will be used.  The default value is SOLID=0.
Alternatively, the user can type variations of YES and NO to set the
parameter.

     SHADE

	This parameter, when non-zero or YES, will cause histogram bars
to be shaded or filled.


     SYMSIZ
	
	This is a multiplier for symbol size.  A default symbol size is
determined internally, and it varies with the size of the plot.  In cases
where the user wants a different symbol size, he/she can set SYMSIZ to
different values and adjust the symbol size accordingly.  For example,
half-normal-size symbols can be produced by setting SYMSIZ to .5, and
double-size symbols can be produced by setting SYMSIZ to 2.  When SYMSIZ
is negative, internal computation of annotation character size is overridden
and the height of the annotation characters (in inches) is the absolute value
of SYMSIZ.

c.  Annotation Control

	Annotations are the values printed next to each tick mark.  In
PLT, the user has a lot of flexibility with these.  Parameters in this
class are as follows:

     XANSKP, YANSKP, RANSKP

	These parameters control the manner in which major intervals are
annotated.  Each is a skip factor whose values range from zero upward.
A value of zero indicates that no annotations are to be skipped, that is,
that all annotations are to be labelled.  A value of one indicates that
every other annotation is to be labelled, and so on.  A value less than
zero indicates that no annotations are to be produced, i.e., the axis
has tick marks, but has no annotation values adjacent to the tic marks.

     ANNSIZ

	ANNSIZ controls the size of the characters used in annotations.
When it is zero or positive, it acts a multiplier that operates on the
internally-computed annotation character size.  The default value is one.
Values greater than one produce larger-than-normal annotations, and values
less than one produce proportionately smaller annotations.  When ANNSIZ
is negative, internal computation of annotation character size is overridden
and the height of the annotation characters (in inches) is the absolute value
of ANNSIZ.

     XFMT, YFMT, RFMT

	These are text strings that define annotation formats for the X-,
Y-, and R-axes, respectively.  Allowable formats are I (for integer)
and F (for floating-point).  The form of the string is Im or Fm.n, where
I specifies integer annotations, i.e., whole numbers, and F specifies
floating-point annotations, i.e., values with a decimal point.  In keeping
with standard FORTRAN format specifications, m defines the number of
characters to use; however, PLT internally determines how many characters
exist in each annotation and adjusts accordingly, so that specifying m is
actually unnecessary.  n specifies the number of digits after the decimal
point in floating-point annotations, and it must be specified.  The
default formats are I for all three axes.
	PLT adjusts annotations such that they are centered next to tick
marks.  The default condition for all axes is for annotations to run
parallel to the axis.


     YHOR

	This parameter, when non-zero or YES, instructs PLT to plot the
Y- and R-axis annotations horizontally, i.e., in the same direction as
the X-axis annotations.  This allows annotations to be read somewhat
more easily.  When horizontal Y- and R-axis annotations are used, the
axis labels are moved away from the axes by the correct distance,
depending on the annotation values and formats.  When employing horizontal
annotations, users should allow enough space on the left- and right-hand
sides of the plot for both the annotations and the axis labels.
	The default condition is vertical orientation of Y- and R-axis
annotations, i.e., YHOR=0.


d.  Messages

	Users can place text messages inside or outside plot frames.
Features of this that have been added in PLT are that (a) multiple
messages may be defined and plotted without intervening PLOT commands,
so long as axes have already been plotted, (b) text can be superscripted
and subscripted, (c) symbols can be inserted in message strings, and
(d) messages can be entered from the keyboard at run time.

     "texttexttexttext"

	Message strings are defined by leading and trailing quotation marks.
The message is the text inside the quotation marks, and the quotation marks
do not appear on the plot.  Message text may occupy several lines.  In this
case, the first character of the second and successive lines will be
positioned below the first character of the first line.  A maximum of 256
characters is allowed per message.  Putting an asterisk as the first
character after the leading quotation mark instructs PLT to accept a
message string from the user's keyboard, as long as his/her terminal
is not the output device.  A special character, $, exists as a space-holder,
and it is converted into a blank before plotting the message.
	The user defines superscripted text by bounding the text string
with { and }.  Likewise, subscripted text is bounded by [ and ].  The
brackets are not plotted.  This means, of course, that brackets cannot be
used except to define superscripted and subscripted text.
	Symbols in message strings are defined by enclosing the number
of the desired symbol in vertical bars.  An asterisk in place of a
symbol number instructs PLT to use the last-defined symbol number.
Symbols in message lines are plotted at the same size that they were for
data values.
	For example, suppose the user wants a three-line message, with
the first line being "Experimental Conditions:", the second line indicating
that F-sub-one equals 1000 and is plotted with the current symbol, and the
third line indicating that F-sub-two equals 2000 and is plotted with filled
squares.  An appropriate message string could be

	"Experimental$Conditions:
	|*| F[1] = 1000
	|10| F[2] = 2000"


Note that the message continues on to the second and third lines since a
terminating quotation mark has not been provided yet, that $ will be changed
to a blank, that the current symbol and symbol number 10 (filled square) are
to be used, that the subscripts are bounded by brackets, and that neither
the bracket or the vertical bars will be plotted.  In this example, the
only thing the user has to keep in mind, is whether the current symbol size
is small enough to fit properly into the rest of the message.

     MXLLC and MYLLC

	These define the X- and Y-axis positions of the lower left-hand
corner of the first character of the message.  The values are in inches
relative to the lower left-hand corner of the axes, i.e., from the
point where the X-axis line meets the Y-axis line.  Messages can be
positioned outside the plot boundaries.

     MSGDAT

	Setting this parameter to a non-zero value, or to YES, yes, or y,
instructs PLT to interpret MXLLC and MYLLC as an (X,Y) coordinate relative
to the axis values.  For example, if the X- and Y-axes are both 6 inches
long and both go from 0 to 100, and if MSGDAT is set to YES, then a
MXLLC-MYLLC combination of 50 and 50 will cause the lower left-hand corner
of the message to begin at the point where a data value of (50,50) would be
positioned, i.e., three inches up from the Y-axis line and three inches
to the right of the X-axis line.  MSGDAT is equivalent to MSGLOC in
the old PLTFIL, and its default value is 0 or NO.

     MSGANGLE

	This parameter controls the angle at which a message is to be
plotted, in degrees that move counterclockwise from the X-axis.  Thus,
if MSGANGLE=90, then the message is oriented upward; and if MSGANGLE=180,
then the message is upside-down.  The default value is 0.

     MSGSIZ

	MSGSIZ is a multiplier that controls the size of characters in
messages, relative to a "standard" message character size generated
internally by PLT.  Values less than 1 produce proportionately smaller-than-
normal messages, and values greater than 1 produce larger-than-normal
characters in messages.  The default value for MSGSIZ is 1.  When MSGSIZ
is negative, internal computation of annotation character size is overridden
and the height of the annotation characters (in inches) is the absolute value
of MSGSIZ.


e.  Miscellaneous Parameters


     AXLWT, LABLWT, ANNLWT, MSGLWT, PLTLWT

	These parameters control line weights for axis lines (AXLWT),
axis labels (LABLWT), annotations (ANNLWT), messages (MSGLWT), and data
values with their connecting lines (PLTLWT).
	Each of the parameters modifies the default line weight
given to the associated aspect of the plot.  Currently negative values
instruct the Tektronix 4662 Pen Plotter to use the pen corresponding to the 
absolute value of the line weight, and since no other devices which have the 
capability to take advantage of different line weights are installed, 
positive values have no meaning.  The default value for all the line 
weights is -1.


     SIZFAC

	Internally, PLT computes "standard" character sizes, line weights,
symbol heights, etc., on the basis of the average axis length, i.e.,
half the sum of XLEN and YLEN.  This is done so that plots retain the
same aspect ratios as they differ in size.
	SIZFAC allows the user to control the "standard" sizes of tick
marks, axis labels, annotations, messages, symbols, etc., as well as
line weights.  It is used primarily to standardize aspects of multiple-
panel plots in situations where the user desires constancy in the way
individual panels are plotted, even though they may be of different size.
	SIZFAC can take on three types of values.  A negative value
instructs PLT to use, for the current frame, the standard sizes computed
for the previous plot frame, regardless of the current plot frame's size.
Thus, setting SIZFAC to, say, -1, will cause the annotation height, tick
mark length, axis label height, etc., from the previous frame to be retained
for the current frame.
	Setting SIZFAC to a positive value instructs PLT to compute
the various sizes, line weights, etc., based on the specified average
axis length.  Thus, if SIZFAC=7, then the various sizes, weights and
lengths are determined as though the average axis length were 7, as
it would be for a plot that was 6x8 or 5x9, even though the actual
average axis length is something else.
	The default value, SIZFAC=0 or NO, causes PLT to re-compute the
various lengths and heights based on the current average axis length.

     ECHO

	Setting this parameter to a non-zero value (or to Yes, Y or y)
will cause PLT to echo each input line from the user's file as it is read.

     GRID

	Setting this parameter to a non-zero value (or to Yes, Y or y)
will cause PLT to plot grid lines at each major interval.  If a right-hand
axis has been specified that differs from the left-hand axis, or if OPENAX
has been set to a non-zero value, then the grid will not appear.  The
default condition is GRID=0 (or NO, N, no or n).
	Users familiar with TEK will note that dashed rather than solid
grid lines are produced on Retro-graphics terminals.


3. Keywords

     Keywords, of which there are 7, control aspects of plotting that do not
relate to the physical dimensions of the plot.  None of the keywords has a
value associated with it.  The keywords recognized by PLT are as follows:

	PLOT

	This instructs PLT to plot a frame based on the current values of
all of the parameters.  In addition, existing data and the most recently
entered message are plotted as well.  After a PLOT command has been
given, the user may plot additional messages and data on the same frame.
In this case, new messages are plotted as they occur, but plotting of
data requires a new PLOT command.

	FINISH

	This keyword terminates and closes a plot file.  If a FINISH keyword
is encountered in a plotfile that has been CALLed or INCLUDEd from the main
plotfile, then transfer reverts to the calling plotfile, and the CALLed
plotfile is closed.
	FINISH should be the last line in the user's plotfile.  Its
presence, however, is not really necessary, since PLT will take the
correct actions even if a FINISH keyword is absent.

	DATLIST

	This keyword causes PLT to type the contents of the data buffer
on the user's terminal.  If the user's terminal is the output device,
nothing happens.  Since the data buffer is cleared as soon as the data
are plotted, entering DATLIST after a PLOT command will produce a
"*** Data Buffer Empty ***" message.

	PRMLIST

	This keyword instructs PLT to type the current parameter values
on the user's terminal and pause.

	NEWFRAME

	This keyword instructs PLT to begin a new plot frame on the
current page.  NEWFRAME is the command given when the user wants to end
one plot frame and put another plot frame on the same page.

	NEWPAGE

	NEWPAGE instructs PLT to advance to a new page.  If the output
device is a Tektronix or Retro-graphics terminal, the bell is rung once
to signal the user that the current page is done.  When this occurs, the
user must type a carriage return in order to have PLT erase the screen
and continue.

	DATA

	This keyword exists only as a convenience for the user.  It
indicates that the lines following the DATA keyword are data.  Actually,
PLT can interpret data values correctly without having to be told so.


4.  Data Values

	Data values may be put into PLT's data buffer in one of three ways:
The most common way is to enter X,Y,Z values into the plotfile and have
PLT interpret them.  These values are interpreted such that the first
two values correspond to the X- and Y-coordinates of the datum, and
the third or Z value corresponds to an error measure for Y that, if it exists,
is plotted as an error bar.  Histogram bin values occupy only the X-value.
In PLTFIL, users were limited to a maximum of 256 values in the data
buffer.  In PLT, this is not the case.  If the number of values exceeds
256, a PLOT command is automatically issued, and the program continues
to read data.
	Data can also be entered manually in one of two ways.  If PLT
encounters a single asterisk as the only input on a plotfile line, then
PLT asks the user to input a single X,Y,Z data value.  If the user's
terminal is the output device, then the request for input is ignored.
A double asterisk (**) causes PLT to request multiple data values,
with the user terminating input by entering a blank line, i.e., by
typing <CR> without any preceding characters.  Again, an infinite number
of values can be entered manually, and PLT will plot them in groups of
256.
	Valid data values are interpreted automatically by PLT.  The
user need not precede data values with a DATA keyword.


	Consider the following sequences:

		 (1)		(2)		(3)		(4)

		DATA		DATA		0		10,10
		10,10		*		4		20,20
		20,20,3		*		10		**
		30		*		5

Sequence (1) causes three values to be read and put at the current end
of the data buffer.  The first value has an X-coordinate of 10 and a
Y-coordinate of 10, with no error bar.  The second value has X- and
Y-coordinates of 20, with an error bar three units long on either side.
The third value has an X-axis coordinate of 30.  The Y-coordinate, since
it is unspecified, is set to 0.  Sequence (2) causes PLT to accept three
data values from the user's keyboard.  Sequence (3) causes PLT to read 4
values into the data buffer, assigning them to consecutive X-axis values.
Each Y-value is zero.  These are valid histogram bin values.  Sequence (4)
reads two data values from the plotfile, then asks the user to supply the
remainder.
	Data are added to the buffer as they occur in the plotfile.
It is only when a PLOT, NEWFRAME, NEWPAGE or FINISH command is given
that they are actually plotted and the data buffer is optionally cleared.


5.  Transfers of Control

     These parameters, of which there are three, instruct PLT to transfer
input control to another file or program.  The operation of these is
as follows:

     CALL filespec
     INCLUDE filespec

	These are equivalent commands that function like a subroutine in
FORTRAN or an INCLUDE statement in RATFOR.  They cause PLT to open the
plotfile named "filespec" and take subsequent input from it, continuing
until that plotfile is exhausted or until a FINISH command is encountered.
When this happens, the CALLed plotfile is closed, and control reverts back
to the original plotfile at the line following the CALL command.
	If the argument to CALL or INCLUDE is an asterisk, then PLT obtains
the named plotfile as an entry from the user's keyboard.  If the user's
terminal is the output device, the command is ignored.
                                                                                                                                                                                                                    