=head1 NAME

Term::GnuplotTerminals - documentation of C<gnuplot> output devices

=head1 aed767

The C<aed512> and C<aed767> terminal drivers support AED graphics terminals.
The two drivers differ only in their horizontal ranges, which are 512 and
768 pixels, respectively.  Their vertical range is 575 pixels.  There are
no options for these drivers.



=head1 aifm

Several options may be set in C<aifm>---the Adobe Illustrator 3.0+ driver.

Syntax:

      set terminal aifm {<color>} {"<fontname>"} {<fontsize>}

<color> is either C<color> or C<monochrome>; "<fontname>" is the name of a
valid PostScript font; <fontsize> is the size of the font in PostScript
points, before scaling by the C<set size> command.  Selecting C<default> sets
all options to their default values: C<monochrome>, "Helvetica", and 14pt.

Since AI does not really support multiple pages, multiple graphs will be
drawn directly on top of one another.  However, each graph will be grouped
individually, making it easy to separate them inside AI (just pick them up
and move them).

Examples:

      set term aifm
      set term aifm 22
      set size 0.7,1.4; set term aifm color "Times-Roman" 14



=head1 amiga

The C<amiga> terminal, for Commodore Amiga computers, allows the user to
plot either to a screen (default), or, if Kickstart 3.0 or higher is
installed, to a window on the current public screen. The font and its size
can also be selected.

Syntax:

      set terminal amiga {screen | window} {"<fontname>"} {<fontsize>}

The default font is 8-point "topaz".

The screen option uses a virtual screen, so it is possible that the graph
will be larger than the screen.



=head1 apollo

The C<apollo> terminal driver supports the Apollo Graphics Primitive Resource
with rescaling after window resizing.  It has no options.

If a fixed-size window is desired, the C<gpr> terminal may be used instead.



=head1 atari ST (via AES)

The C<atari> terminal has options to set the character size and the screen
colors.

Syntax:

      set terminal atari {<fontsize>} {<col0> <col1> ... <col15.}

The character size must appear if any colors are to be specified.  Each of
the (up to 16) colors is given as a three-digit hex number, where the digits
represent RED, GREEN and BLUE (in that order).  The range of 0--15 is scaled
to whatever color range the screen actually has.  On a normal ST screen, odd
and even intensities are the same.

Examples:

      set terminal atari 4    # use small (6x6) font
      set terminal atari 6 0  # set monochrome screen to white on black
      set terminal atari 13 0 fff f00 f0 f ff f0f
                 # set first seven colors to black, white, green, blue,
                 # cyan, purple, and yellow and use large font (8x16).

Additionally, if an environment variable GNUCOLORS exists, its contents are
interpreted as an options string, but an explicit terminal option takes
precedence.



=head1 atari ST (via VDI)

The C<vdi> terminal is the same as the C<atari> terminal, except that it sends
output to the screen via the VDI and not into AES-Windows.

The C<vdi> terminal has options to set the character size and the screen
colors.

Syntax:

      set terminal vdi {<fontsize>} {<col0> <col1> ... <col15.}

The character size must appear if any colors are to be specified.  Each of
the (up to 16) colors is given as a three-digit hex number, where the digits
represent RED, GREEN and BLUE (in that order).  The range of 0--15 is scaled
to whatever color range the screen actually has.  On a normal ST screen, odd
and even intensities are the same.

Examples:

      set terminal vdi 4    # use small (6x6) font
      set terminal vdi 6 0  # set monochrome screen to white on black
      set terminal vdi 13 0 fff f00 f0 f ff f0f
                 # set first seven colors to black, white, green, blue,
                 # cyan, purple, and yellow and use large font (8x16).

Additionally, if an environment variable GNUCOLORS exists, its contents are
interpreted as an options string, but an explicit terminal option takes
precedence.



=head1 cgi

The C<cgi> and C<hcgi> terminal drivers support SCO CGI drivers.  C<hcgi> is for
printers; the environment variable CGIPRNT must be set.  C<cgi> may be used
for either a display or hardcopy; if the environment variable CGIDISP is set,
then that display is used.  Otherwise CGIPRNT is used.

These terminals have no options.



=head1 cgm

The C<cgm> terminal generates a Computer Graphics Metafile.  This file format
is a subset of the ANSI X3.122-1986 standard entitled "Computer Graphics -
Metafile for the Storage and Transfer of Picture Description Information".
Several options may be set in C<cgm>.

Syntax:

      set terminal cgm {<mode>} {<color>} {<rotation>} {solid | dashed}
                       {width <plot_width>} {linewidth <line_width>}
                       {"<font>"} {<fontsize>}

where <mode> is C<landscape>, C<portrait>, or C<default>;
<color> is either C<color> or C<monochrome>; 
<rotation> is either C<rotate> or C<norotate>;
C<solid> draws all curves with solid lines, overriding any dashed patterns;
<plot_width> is the width of the page in points; 
<line_width> is the line width in points; 
<font> is the name of a font; and 
C<<fontsize>> is the size of the font in points.

By default, C<cgm> uses rotated text for the Y axis label.

The first six options can be in any order.  Selecting C<default> sets all
options to their default values.

Examples:

      set terminal cgm landscape color rotate dashed width 432 \
                     linewidth 1  'Arial Bold' 12       # defaults
      set terminal cgm 14 linewidth 2  14  # wider lines & larger font
      set terminal cgm portrait 'Times Roman Italic' 12
      set terminal cgm color solid    # no pesky dashes!



=head2 font

The first part of a Computer Graphics Metafile, the metafile description,
includes a font table.  In the picture body, a font is designated by an
index into this table.  By default, this terminal generates a table with
the following fonts:

       Arial
       Arial Italic
       Arial Bold
       Arial Bold Italic
       Times Roman
       Times Roman Italic
       Times Roman Bold
       Times Roman Bold Italic
       Helvetica
       Roman

Case is not distinct, but the modifiers must appear in the above order (that
is, not 'Arial Italic Bold').  'Arial Bold' is the default font.

You may also specify a font name which does not appear in the default font
table.  In that case, a new font table is constructed with the specified
font as its only entry.  You must ensure that the spelling, capitalization,
and spacing of the name are appropriate for the application that will read
the CGM file.



=head2 fontsize

Fonts are scaled assuming the page is 6 inches wide.  If the C<size> command
is used to change the aspect ratio of the page or the CGM file is converted
to a different width (e.g. it is imported into a document in which the
margins are not 6 inches apart), the resulting font sizes will be different.
To change the assumed width, use the C<width> option.



=head2 linewidth

The C<linewidth> option sets the width of lines in pt.  The default width is
1 pt.  Scaling is affected by the actual width of the page, as discussed
under the C<fontsize> and C<width> options



=head2 rotate

The C<norotate> option may be used to disable text rotation.  For example,
the CGM input filter for Word for Windows 6.0c can accept rotated text, but
the DRAW editor within Word cannot.  If you edit a graph (for example, to
label a curve), all rotated text is restored to horizontal.  The Y axis
label will then extend beyond the clip boundary.  With C<norotate>, the Y
axis label starts in a less attractive location, but the page can be edited
without damage.  The C<rotate> option confirms the default behavior.



=head2 solid

The C<solid> option may be used to disable dashed line styles in the
plots.  This is useful when color is enabled and the dashing of the lines
detracts from the appearance of the plot. The C<dashed> option confirms the
default behavior, which gives a different dash pattern to each curve.



=head2 size

Default size of a CGM page is 32599 units wide and 23457 units high for
landscape, or 23457 units wide by 32599 units high for portrait.



=head2 width

All distances in the CGM file are in abstract units.  The application that
reads the file determines the size of the final page.  By default, the width
of the final page is assumed to be 6 inches (15.24 cm).  This distance is
used to calculate the correct font size, and may be changed with the C<width>
option.  The keyword should be followed by the width in points.  (Here, a
point is 1/72 inch, as in PostScript.  This unit is known as a "big point"
in TeX.)  C<gnuplot> arithmetic can be used to convert from other units, as
follows:

      set terminal cgm width 432            # default
      set terminal cgm width 6*72           # same as above
      set terminal cgm width 10/2.54*72     # 10 cm wide



=head2 winword6

The default font table was chosen to match, where possible, the default font
assignments made by the Computer Graphics Metafile input filter for
Microsoft Word 6.0c, although the filter makes available only 'Arial' and
'Times Roman' fonts and their bold and/or italic variants.  Other fonts such
as 'Helvetica' and 'Roman' are not available.  If the CGM file includes a
font table, the filter mostly ignores it.  However, it changes certain font
assignments so that they disagree with the table.  As a workaround, the
C<winword6> option deletes the font table from the CGM file.  In this case,
the filter makes predictable font assignments.  'Arial Bold' is correctly
assigned even with the font table present, which is one reason it was chosen
as the default.

C<winword6> disables the color tables for a similar reason---with the color
table included, Microsoft Word displays black for color 7.

Linewidths and pointsizes may be changed with C<set linestyle>.



=head1 corel

The C<corel> terminal driver supports CorelDraw.

Syntax:

      set terminal corel {  default
                          | {monochrome | color
                               {<fontname> {"<fontsize>" 
                                  {<xsize> <ysize> {<linewidth> }}}}}

where the fontsize and linewidth are specified in points and the sizes in
inches.  The defaults are monochrome, "SwitzerlandLight", 22, 8.2, 10 and 1.2.



=head1 debug

This terminal is provided to allow for the debugging of C<gnuplot>.  It is
likely to be of use only for users who are modifying the source code.



=head1 svga

The C<svga> terminal driver supports PCs with SVGA graphics.  It can only be
be used if it is compiled with DJGPP.  Its only option is the font.

Syntax:

      set terminal svga {"<fontname>"}



=head1 dumb

The C<dumb> terminal driver has an optional size specification and trailing
linefeed control.

Syntax:

      set terminal dumb {[no]feed} {<xsize> <ysize>}

where <xsize> and <ysize> set the size of the dumb terminals. Default is
79 by 24. The last newline is printed only if C<feed> is enabled.

Examples:

      set term dumb nofeed
      set term dumb 79 49 # VGA screen---why would anyone do that?



=head1 dxf

The C<dxf> terminal driver creates pictures that can be imported into AutoCad
(Release 10.x).  It has no options of its own, but some features of its plots
may be modified by other means.  The default size is 120x80 AutoCad units,
which can be changed by C<set size>.  C<dxf> uses seven colors (white, red,
yellow, green, cyan, blue and magenta), which can be changed only by
modifying the source file.  If a black-and-white plotting device is used, the
colors are mapped to differing line thicknesses.  See the description of the
AutoCad print/plot command.



=head1 dxy800a

This terminal driver supports the Roland DXY800A plotter.  It has no options.



=head1 eepic

The C<eepic> terminal driver supports the extended LaTeX picture environment.
It is an alternative to the C<latex> driver.

The output of this terminal is intended for use with the "eepic.sty" macro
package for LaTeX.  To use it, you need "eepic.sty", "epic.sty" and a
printer driver that supports the "tpic" \specials.  If your printer driver
doesn't support those \specials, "eepicemu.sty" will enable you to use some
of them.

Although dotted and dashed lines are possible with C<eepic> and are tempting,
they do not work well for high-sample-rate curves, fusing the dashes all
together into a solid line.  For now, the C<eepic> driver creates only solid
lines.  There is another gnuplot driver (C<tpic>) that supports dashed lines,
but it cannot be used if your DVI driver doesn't support "tpic" \specials.

All drivers for LaTeX offer a special way of controlling text positioning:
If any text string begins with '{', you also need to include a '}' at the
end of the text, and the whole text will be centered both horizontally
and vertically by LaTeX. --- If the text string begins with '[', you need
to continue it with: a position specification (up to two out of t,b,l,r),
']{', the text itself, and finally, '}'. The text itself may be anything
LaTeX can typeset as an LR-box. \rule{}{}'s may help for best positioning.

The C<eepic> terminal has no options.

Examples:
About label positioning:
Use gnuplot defaults (mostly sensible, but sometimes not really best):

       set title '\LaTeX\ -- $ \gamma $'

Force centering both horizontally and vertically:

       set label '{\LaTeX\ -- $ \gamma $}' at 0,0

Specify own positioning (top here):

       set xlabel '[t]{\LaTeX\ -- $ \gamma $}'

The other label -- account for long ticlabels:

       set ylabel '[r]{\LaTeX\ -- $ \gamma $\rule{7mm}{0pt}'



=head1 emxvga

The C<emxvga>, C<emxvesa> and C<vgal> terminal drivers support PCs with SVGA,
vesa SVGA and VGA graphics boards, respectively.  They are intended to be
compiled with "emx-gcc" under either DOS or OS/2.  They also need VESA and
SVGAKIT maintained by Johannes Martin (JMARTIN@GOOFY.ZDV.UNI-MAINZ.DE) with
additions by David J. Liu (liu@phri.nyu.edu).

Syntax:

      set terminal emxvga
      set terminal emxvesa {vesa-mode}
      set terminal vgal

The only option is the vesa mode for C<emxvesa>, which defaults to G640x480x256.



=head1 epson-180dpi

This driver supports a family of Epson printers and derivatives.

C<epson-180dpi> and C<epson-60dpi> are drivers for Epson LQ-style 24-pin
printers with resolutions of 180 and 60 dots per inch, respectively.

C<epson-lx800> is a generic 9-pin driver appropriate for printers like the
Epson LX-800, the Star NL-10 and NX-1000, the PROPRINTER, and so forth.

C<nec-cp6> is generix 24-pin driver that can be used for printers like the
NEC CP6 and the Epson LQ-800.

The C<okidata> driver supports the 9-pin OKIDATA 320/321 Standard printers.

The C<starc> driver is for the Star Color Printer.

The C<tandy-60dpi> driver is for the Tandy DMP-130 series of 9-pin, 60-dpi
printers.

Only C<nec-cp6> has any options.

Syntax:

      set terminal nec-cp6 {monochrome | colour | draft}

which defaults to monochrome.

With each of these drivers, a binary copy is required on a PC to print.  Do
not use C<print>---use instead C<copy file /b lpt1:>.



=head1 excl

The C<excl> terminal driver supports Talaris printers such as the EXCL Laser
printer and the 1590.  It has no options.



=head1 hercules

These drivers supports PC monitors with autodetected graphics boards.  They
can be used only when compiled with Zortech C/C++.  None have options.



=head1 fig

The C<fig> terminal device generates output in the Fig graphics language.

Syntax:

      set terminal fig {monochrome | color} {small | big}
                       {pointsmax <max_points>}
                       {landscape | portrait}
                       {metric | inches}
                       {fontsize <fsize>}
                       {size <xsize> <ysize>}
                       {thickness <units>}
                       {depth <layer>}

C<monochrome> and C<color> determine whether the picture is black-and-white or
C<color>.  C<small> and C<big> produce a 5x3 or 8x5 inch graph in the default
C<landscape> mode and 3x5 or 5x8 inches in C<portrait> mode.  <max_points>
sets the maximum number of points per polyline.  Default units for editing
with "xfig" may be C<metric> or C<inches>.  C<fontsize> sets the size of the
text font to <fsize> points.  C<size> sets (overrides) the size of the drawing
area to <xsize>*<ysize> in units of inches or centimeters depending on the
C<inches> or C<metric> setting in effect.  C<depth> sets the default depth layer
for all lines and text.  The default depth is 10 to leave room for adding
material with "xfig" on top of the plot.

C<thickness> sets the default line thickness, which is 1 if not specified.
Overriding the thickness can be achieved by adding a multiple of 100 to the
to the C<linetype> value for a C<plot> command.  In a similar way the C<depth>
of plot elements (with respect to the default depth) can be controlled by
adding a multiple of 1000 to <linetype>.  The depth is then <layer> +
<linetype>/1000 and the thickness is (<linetype>%1000)/100 or, if that is
zero, the default line thickness.

Additional point-plot symbols are also available with the C<fig> driver. The
symbols can be used through C<pointtype> values % 100 above 50, with different
fill intensities controlled by <pointtype> % 5 and outlines in black (for
<pointtype> % 10 < 5) or in the current color.  Available symbols are

        50 - 59:  circles
        60 - 69:  squares
        70 - 79:  diamonds
        80 - 89:  upwards triangles
        90 - 99:  downwards triangles

The size of these symbols is linked to the font size.  The depth of symbols
is by default one less than the depth for lines to achieve nice error bars.
If <pointtype> is above 1000, the depth is <layer> + <pointtype>/1000-1.  If
<pointtype>%1000 is above 100, the fill color is (<pointtype>%1000)/100-1.

Available fill colors are (from 1 to 9): black, blue, green, cyan, red,
magenta, yellow, white and dark blue (in monochrome mode: black for 1 to 6
and white for 7 to 9).

See C<plot with> for details of <linetype> and <pointtype>.

The C<big> option is a substitute for the C<bfig> terminal in earlier versions,
which is no longer supported.

Examples:

      set terminal fig monochrome small pointsmax 1000  # defaults

      plot 'file.dat' with points linetype 102 pointtype 759

would produce circles with a blue outline of width 1 and yellow fill color.

      plot 'file.dat' using 1:2:3 with err linetype 1 pointtype 554

would produce errorbars with black lines and circles filled red.  These
circles are one layer above the lines (at depth 9 by default).

To plot the error bars on top of the circles use

      plot 'file.dat' using 1:2:3 with err linetype 1 pointtype 2554



=head1 gif

The C<gif> terminal driver generates output in GIF format.  It uses Thomas
Boutell's gd library, which is available from http://www.boutell.com/gd/

Syntax:

      set terminal gif {transparent} {interlace}
                       {small | medium | large}
                       {size <x>,<y>}
                       {<color0> <color1> <color2> ...}

C<transparent> instructs the driver to generate transparent GIFs.  The first
color will be the transparent one.

C<interlace> instructs the driver to generate interlaced GIFs.

The choice of fonts is C<small> (6x12 pixels), C<medium> (7x13 Bold) or C<large>
(8x16).

The size <x,y> is given in pixels---it defaults to 640x480.  The number of
pixels can be also modified by scaling with the C<set size> command.

Each color must be of the form 'xrrggbb', where x is the literal character
'x' and 'rrggbb' are the red, green and blue components in hex.  For example,
'x00ff00' is green.  The background color is set first, then the border
colors, then the X & Y axis colors, then the plotting colors.  The maximum
number of colors that can be set is 256.

Examples:

      set terminal gif small size 640,480 \
                       xffffff x000000 x404040 \
                       xff0000 xffa500 x66cdaa xcdb5cd \
                       xadd8e6 x0000ff xdda0dd x9500d3    # defaults

which uses white for the non-transparent background, black for borders, gray
for the axes, and red, orange, medium aquamarine, thistle 3, light blue, blue,
plum and dark violet for eight plotting colors.

      set terminal gif transparent xffffff \
                       x000000 x202020 x404040 x606060 \
                       x808080 xA0A0A0 xC0C0C0 xE0E0E0 \

which uses white for the transparent background, black for borders, dark
gray for axes, and a gray-scale for the six plotting colors.

The page size is 640x480 pixels.  The C<gif> driver can create either color
or monochromatic output, but you have no control over which is produced.

The current version of the C<gif> driver does not support animated GIFs.



=head1 unixplot

The C<unixplot> driver produces device-independent output in the GNU plot
graphics language.  The default size of the PostScript results generated by
"plot2ps" is 5 x 3 inches; this can be increased up to about 8.25 x 8.25 by
C<set size>.

Syntax:

      set terminal unixplot {"<fontname>"} {<fontsize>}

which defaults to 10-point "Courier".

There is a non-GNU version of the C<unixplot> driver which cannot be compiled
unless this version is left out.



=head1 gpic

The C<gpic> terminal driver generates GPIC graphs in the Free Software
Foundations's "groff" package.  The default size is 5 x 3 inches.  The only
option is the origin, which defaults to (0,0).

Syntax:

      set terminal gpic {<x> <y>}

where C<x> and C<y> are in inches.

A simple graph can be formatted using

      groff -p -mpic -Tps file.pic > file.ps.

The output from pic can be pipe-lined into eqn, so it is possible to put
complex functions in a graph with the C<set label> and C<set {x/y}label>
commands.  For instance,

      set ylab '@space 0 int from 0 to x alpha ( t ) roman d t@'

will label the y axis with a nice integral if formatted with the command:

      gpic filename.pic | geqn -d@@ -Tps | groff -m[macro-package] -Tps
          > filename.ps

Figures made this way can be scaled to fit into a document.  The pic language
is easy to understand, so the graphs can be edited by hand if need be.  All
co-ordinates in the pic-file produced by C<gnuplot> are given as x+gnuplotx
and y+gnuploty.  By default x and y are given the value 0.  If this line is
removed with an editor in a number of files, one can put several graphs in
one figure like this (default size is 5.0x3.0 inches):

      .PS 8.0
      x=0;y=3
      copy "figa.pic"
      x=5;y=3
      copy "figb.pic"
      x=0;y=0
      copy "figc.pic"
      x=5;y=0
      copy "figd.pic"
      .PE

This will produce an 8-inch-wide figure with four graphs in two rows on top
of each other.

One can also achieve the same thing by the command

      set terminal gpic x y

for example, using

      .PS 6.0
      copy "trig.pic"
      .PE



=head1 gpr

The C<gpr> terminal driver supports the Apollo Graphics Primitive Resource
for a fixed-size window.  It has no options.

If a variable window size is desired, use the C<apollo> terminal instead.



=head1 grass

The C<grass> terminal driver gives C<gnuplot> capabilities to users of the 
GRASS geographic information system.  Contact grassp-list@moon.cecer.army.mil
for more information.  Pages are written to the current frame of the GRASS
Graphics Window.  There are no options.



=head1 hp2623a

The C<hp2623a> terminal driver supports the Hewlett Packard HP2623A.  It has
no options.



=head1 hp2648

The C<hp2648> terminal driver supports the Hewlett Packard HP2647 and HP2648.
It has no options.



=head1 hp500c

The C<hp500c> terminal driver supports the Hewlett Packard HP DeskJet 500c.
It has options for resolution and compression.

Syntax:

      set terminal hp500c {<res>} {<comp>}

where C<res> can be 75, 100, 150 or 300 dots per inch and C<comp> can be "rle",
or "tiff".  Any other inputs are replaced by the defaults, which are 75 dpi
and no compression.  Rasterization at the higher resolutions may require a
large amount of memory.



=head1 hpgl

The C<hpgl> driver produces HPGL output for devices like the HP7475A plotter.
There are two options which can be set---the number of pens and "eject", which
tells the plotter to eject a page when done.  The default is to use 6 pens
and not to eject the page when done.

The international character sets ISO-8859-1 and CP850 are recognized via
C<set encoding iso_8859_1> or C<set encoding cp850> (see C<set encoding> for
details).

Syntax:

      set terminal hpgl {<number_of_pens>} {eject}

The selection

      set terminal hpgl 8 eject

is equivalent to the previous C<hp7550> terminal, and the selection

      set terminal hpgl 4

is equivalent to the previous C<hp7580b> terminal.

The C<pcl5> driver supports the Hewlett-Packard Laserjet III.  It actually uses
HPGL-2, but there is a name conflict among the terminal devices.  It has
several options

Syntax:

      set terminal pcl5 {<mode>} {<font>} {<fontsize>}

where <mode> is C<landscape>, or C<portrait>, <font> is C<stick>, C<univers>, or
C<cg_times>, and <fontsize> is the size in points.

With C<pcl5> international characters are handled by the printer; you just put
the appropriate 8-bit character codes into the text strings.  You don't need
to bother with C<set encoding>.

HPGL graphics can be imported by many software packages.



=head1 hpljii

The C<hpljii> terminal driver supports the HP Laserjet Series II printer.  The
C<hpdj> driver supports the HP DeskJet 500 printer.  These drivers allow a
choice of resolutions.

Syntax:

      set terminal hpljii | hpdj {<res>}

where C<res> may be 75, 100, 150 or 300 dots per inch; the default is 75.
Rasterization at the higher resolutions may require a large amount of memory.

The C<hp500c> terminal is similar to C<hpdj>; C<hp500c> additionally supports
color and compression.



=head1 hppj

The C<hppj> terminal driver supports the HP PaintJet and HP3630 printers.  The
only option is the choice of font.

Syntax:

      set terminal hppj {FNT5X9 | FNT9X17 | FNT13X25}

with the middle-sized font (FNT9X17) being the default.



=head1 imagen

The C<imagen> terminal driver supports Imagen laser printers.  It is capable
of placing multiple graphs on a single page.

Syntax:

      set terminal imagen {<fontsize>} {portrait | landscape}
                          {[<horiz>,<vert>]}

where C<fontsize> defaults to 12 points and the layout defaults to C<landscape>.
C<<horiz>> and C<<vert>> are the number of graphs in the horizontal and
vertical directions; these default to unity.

Example:

      set terminal imagen portrait [2,3]

puts six graphs on the page in three rows of two in portrait orientation.



=head1 iris4d

The C<iris4d> terminal driver supports Silicon Graphics IRIS 4D computers.
Its only option is 8- or 24-bit color depth.  The default is 8.

Syntax:

      set terminal iris4d {8 | 24}

The color depth is not really a choice -- the value appropriate for the
hardware should be selected.

When using 24-bit mode, the colors can be directly specified via the file
.gnuplot_iris4d that is searched in the current directory and then in the
home directory specified by the HOME environment variable.  This file holds
RGB values for the background, border, labels and nine plotting colors, in
that order.  For example, here is a file containing the default colors:

      85   85   85     Background   (dark gray)
      0    0    0      Boundary     (black)
      170  0    170    Labeling     (magenta)
      85   255  255    Plot Color 1 (light cyan)
      170  0    0      Plot Color 2 (red)
      0    170  0      Plot Color 3 (green)
      255  85   255    Plot Color 4 (light magenta)
      255  255  85     Plot Color 5 (yellow)
      255  85   85     Plot Color 6 (light red)
      85   255  85     Plot Color 7 (light green)
      0    170  170    Plot Color 8 (cyan)
      170  170  0      Plot Color 9 (brown)

This file must have exactly 12 lines of RGB triples.  No empty lines are
allowed, and anything after the third number on a line is ignored.



=head1 kyo

The C<kyo> and C<prescribe> terminal drivers support the Kyocera laser printer.
The only difference between the two is that C<kyo> uses "Helvetica" whereas
C<prescribe> uses "Courier".  There are no options.



=head1 latex

The C<latex> and C<emtex> drivers allow two options.

Syntax:

      set terminal latex | emtex {courier | roman} {<fontsize>}

C<fontsize> may be any size you specify.  The default is 10-point Roman.

Unless your driver is capable of building fonts at any size (e.g. dvips),
stick to the standard 10, 11 and 12 point sizes.

METAFONT users beware: METAFONT does not like odd sizes.

All drivers for LaTeX offer a special way of controlling text positioning:
If any text string begins with '{', you also need to include a '}' at the
end of the text, and the whole text will be centered both horizontally
and vertically by LaTeX. --- If the text string begins with '[', you need
to continue it with: a position specification (up to two out of t,b,l,r),
']{', the text itself, and finally, '}'. The text itself may be anything
LaTeX can typeset as an LR-box. \rule{}{}'s may help for best positioning.

Examples:
About label positioning:
Use gnuplot defaults (mostly sensible, but sometimes not really best):

       set title '\LaTeX\ -- $ \gamma $'

Force centering both horizontally and vertically:

       set label '{\LaTeX\ -- $ \gamma $}' at 0,0

Specify own positioning (top here):

       set xlabel '[t]{\LaTeX\ -- $ \gamma $}'

The other label -- account for long ticlabels:

       set ylabel '[r]{\LaTeX\ -- $ \gamma $\rule{7mm}{0pt}'



=head1 linux

The C<linux> driver has no additional options to specify.  It looks at the
environment variable GSVGAMODE for the default mode; if not set, it uses
1024x768x256 as default mode or, if that is not possible, 640x480x16
(standard VGA).



=head1 macintosh

Several options may be set in the 'macintosh' driver.

Syntax:

     set terminal macintosh {singlewin | multiwin} {vertical | novertical} {size <width>, <height> | default}

'singlewin' limits the output to a single window and is useful for animations.
'multiwin' allows multiple windows.
'vertical' is only valid under the gx option. With this option, rotated text

    be drawn vertically. novertical turns this option off.
 size <width>, <height> overrides the graph size set in the preferences
    dialog until it is cleared with either 'set term mac size default'
    or 'set term mac default'.

 'set term mac size default' sets the window size settings to those set in
    the preferences dialog.

 'set term mac default' sets all options to their default values.
    Default values: nogx, multiwin, novertical.

 If you generate graphs under the multiwin option and then switch to singlewin,
 the next plot command will cause one more window to be created. This new
 window will be reused as long as singlewin is in effect. If you switch back
 to multiwin, generate some graphs, and then switch to singlewin again, the
 orginal 'singlewin' window will be resused if it is still open. Otherwise
 a new 'singlewin' window will be created. The 'singlewin' window is not numbered.



=head1 mf

The C<mf> terminal driver creates a input file to the METAFONT program.  Thus a
figure may be used in the TeX document in the same way as is a character.

To use a picture in a document, the METAFONT program must be run with the
output file from C<gnuplot> as input.  Thus, the user needs a basic knowledge
of the font creating process and the procedure for including a new font in a
document.  However, if the METAFONT program is set up properly at the local
site, an unexperienced user could perform the operation without much trouble.

The text support is based on a METAFONT character set.  Currently the
Computer Modern Roman font set is input, but the user is in principal free to
chose whatever fonts he or she needs.  The METAFONT source files for the
chosen font must be available.  Each character is stored in a separate
picture variable in METAFONT.  These variables may be manipulated (rotated,
scaled etc.) when characters are needed.  The drawback is the interpretation
time in the METAFONT program.  On some machines (i.e. PC) the limited amount
of memory available may also cause problems if too many pictures are stored.

The C<mf> terminal has no options.



=head2 METAFONT Instructions


- Set your terminal to METAFONT:

  set terminal mf

- Select an output-file, e.g.:

  set output "myfigures.mf"

- Create your pictures. Each picture will generate a separate character. Its
default size will be 5*3 inches. You can change the size by saying C<set size
0.5,0.5> or whatever fraction of the default size you want to have.

- Quit C<gnuplot>.

- Generate a TFM and GF file by running METAFONT on the output of C<gnuplot>.
Since the picture is quite large (5*3 in), you will have to use a version of
METAFONT that has a value of at least 150000 for memmax.  On Unix systems
these are conventionally installed under the name bigmf.  For the following
assume that the command virmf stands for a big version of METAFONT.  For
example:

- Invoke METAFONT:

    virmf '&plain'

- Select the output device: At the METAFONT prompt ('*') type:

    \mode:=CanonCX;     % or whatever printer you use

- Optionally select a magnification:

    mag:=1;             % or whatever you wish

- Input the C<gnuplot>-file:

    input myfigures.mf

On a typical Unix machine there will usually be a script called "mf" that
executes virmf '&plain', so you probably can substitute mf for virmf &plain.
This will generate two files: mfput.tfm and mfput.$$$gf (where $$$ indicates
the resolution of your device).  The above can be conveniently achieved by
typing everything on the command line, e.g.:
virmf '&plain' '\mode:=CanonCX; mag:=1; input myfigures.mf'
In this case the output files will be named myfigures.tfm and
myfigures.300gf.

- Generate a PK file from the GF file using gftopk:

  gftopk myfigures.300gf myfigures.300pk

The name of the output file for gftopk depends on the DVI driver you use.
Ask your local TeX administrator about the naming conventions.  Next, either
install the TFM and PK files in the appropriate directories, or set your
environment variables properly.  Usually this involves setting TEXFONTS to
include the current directory and doing the same thing for the environment
variable that your DVI driver uses (no standard name here...).  This step is
necessary so that TeX will find the font metric file and your DVI driver will
find the PK file.

- To include your pictures in your document you have to tell TeX the font:

  \font\gnufigs=myfigures

Each picture you made is stored in a single character.  The first picture is
character 0, the second is character 1, and so on...  After doing the above
step, you can use the pictures just like any other characters.  Therefore, to
place pictures 1 and 2 centered in your document, all you have to do is:

  \centerline{\gnufigs\char0}
  \centerline{\gnufigs\char1}

in plain TeX.  For LaTeX you can, of course, use the picture environment and
place the picture wherever you wish by using the \makebox and \put macros.

This conversion saves you a lot of time once you have generated the font;
TeX handles the pictures as characters and uses minimal time to place them,
and the documents you make change more often than the pictures do.  It also
saves a lot of TeX memory.  One last advantage of using the METAFONT driver
is that the DVI file really remains device independent, because no \special
commands are used as in the eepic and tpic drivers.



=head1 mgr

The C<mgr> terminal driver supports the Mgr Window system.  It has no options.



=head1 mif

The C<mif> terminal driver produces Frame Maker MIF format version 3.00.  It
plots in MIF Frames with the size 15*10 cm, and plot primitives with the same
pen will be grouped in the same MIF group.  Plot primitives in a C<gnuplot>
page will be plotted in a MIF Frame, and several MIF Frames are collected in
one large MIF Frame.  The MIF font used for text is "Times".

Several options may be set in the MIF 3.00 driver.

Syntax:

      set terminal mif {colour | monochrome} {polyline | vectors}
                       {help | ?}

C<colour> plots lines with line types >= 0 in colour (MIF sep. 2--7) and
C<monochrome> plots all line types in black (MIF sep. 0).
C<polyline> plots curves as continuous curves and C<vectors> plots curves as
collections of vectors.
C<help> and C<?> print online help on standard error output---both print a
short description of the usage; C<help> also lists the options;

Examples:

      set term mif colour polylines    # defaults
      set term mif                     # defaults
      set term mif vectors
      set term mif help



=head1 mtos

The C<mtos> terminal has no options.  It sends data via a pipe to an external
program called GPCLIENT.  It runs under MULTITOS, Magic 3.x, MagicMAC. and
MiNT.  If you cannot find GPCLIENT, than mail to dirk@lstm.uni-erlangen.de.



=head1 next

Several options may be set in the next driver.

Syntax:

      set terminal next {<mode>} {<type> } {<color>} {<dashed>}
                 {"<fontname>"} {<fontsize>} title {"<newtitle>"}

where <mode> is  C<default>, which sets all options to their defaults;
<type> is either C<new> or C<old>, where C<old> invokes the old single window;
<color> is either C<color> or C<monochrome>;
<dashed> is either C<solid> or C<dashed>;
"<fontname>" is the name of a valid PostScript font;
<fontsize> is the size of the font in PostScript points; and
<title> is the title for the GnuTerm window.
Defaults are  C<new>, C<monochrome>, C<dashed>, "Helvetica", 14pt.

Examples:

      set term next default
      set term next 22
      set term next color "Times-Roman" 14
      set term next color "Helvetica" 12 title "MyPlot"
      set term next old

Pointsizes may be changed with C<set linestyle>.



=head1 pbm

Several options may be set in the C<pbm> terminal---the driver for PBMplus.

Syntax:

      set terminal pbm {<fontsize>} {<mode>}

where <fontsize> is C<small>, C<medium>, or C<large> and <mode> is C<monochrome>,
C<gray> or C<color>.  The default plot size is 640 pixels wide and 480 pixels
high; this may be changed by C<set size>.

The output of the C<pbm> driver depends upon <mode>: C<monochrome> produces a
portable bitmap (one bit per pixel), C<gray> a portable graymap (three bits
per pixel) and C<color> a portable pixmap (color, four bits per pixel).

The output of this driver can be used with Jef Poskanzer's excellent PBMPLUS
package, which provides programs to convert the above PBMPLUS formats to GIF,
TIFF, MacPaint, Macintosh PICT, PCX, X11 bitmap and many others.  PBMPLUS may
be obtained from ftp.x.org.  The relevant files have names that begin with
"netpbm-1mar1994.p1"; they reside in /contrib/utilities.  The package can
probably also be obtained from one of the many sites that mirrors ftp.x.org.

Examples:

      set terminal pbm small monochrome             # defaults
      set size 2,2; set terminal pbm color medium



=head1 dospc

The C<dospc> terminal driver supports PCs with arbitrary graphics boards, which
will be automatically detected.  It should be used only if you are not using
the gcc or Zortec C/C++ compilers.



=head1 pm

The C<pm> terminal driver provides an OS/2 Presentation Manager window in
which the graph is plotted.  The window is opened when the first graph is
plotted.  This window has its own online help as well as facilities for
printing, copying to the clipboard and some line type and color adjustments.
The C<multiplot> option is supported.

Syntax:

      set terminal pm {server {n}} {persist} {widelines} {enhanced} {"title"}

If C<persist> is specified, each graph appears in its own window and all
windows remain open after C<gnuplot> exits.  If C<server> is specified, all
graphs appear in the same window, which remains open when C<gnuplot> exits.
This option takes an optional numerical argument which specifies an instance
of the server process.  Thus multiple server windows can be in use at the
same time.

If C<widelines> is specified, all plots will be drawn with wide lines.  If
C<enhanced> is specified, sub- and superscripts and multiple fonts are
enabled using the same syntax as the C<enhanced postscript> option (see
C<set terminal postscript enhanced> for details).  Font names for the basic
PostScript fonts may be abbreviated to single letters.

If C<title> is specified, it will be used as the title of the plot window.
It will also be used as the name of the server instance, and will override
the optional numerical argument.

Linewidths may be changed with C<set linestyle>.



=head1 png

The C<png> terminal driver supports Portable Network Graphics.  To compile it,
you will need  the third-party libraries "libpng" and "zlib"; both are
available at ftp://ftp.uu.net/graphics/png.  C<png> has two options.

Syntax:

      set terminal png {small | medium | large}
                       {monochrome | gray | color}

The defaults are small (fontsize) and monochrome.



=head1 postscript

Several options may be set in the C<postscript> driver.

Syntax:

      set terminal postscript {<mode>} {enhanced | noenhanced}
                              {color | monochrome} {solid | dashed}
                              {<duplexing>}
                              {"<fontname>"} {<fontsize>}

where <mode> is C<landscape>, C<portrait>, C<eps> or C<default>;
C<solid> draws all plots with solid lines, overriding any dashed patterns;
<duplexing> is C<defaultplex>, C<simplex> or C<duplex> ("duplexing" in
PostScript is the ability of the printer to print on both sides of the same
page---don't set this if your printer can't do it);
C<enhanced> activates the "enhanced PostScript" features (subscripts,
superscripts and mixed fonts);
C<"<fontname>"> is the name of a valid PostScript font; and C<<fontsize>> is
the size of the font in PostScript points.

C<default> mode sets all options to their defaults: C<landscape>, C<monochrome>,
C<dashed>, C<defaultplex>, C<noenhanced>, "Helvetica" and 14pt.

 Default size of a PostScript plot is 10 inches wide and 7 inches high.

C<eps> mode generates EPS (Encapsulated PostScript) output, which is just
regular PostScript with some additional lines that allow the file to be
imported into a variety of other applications.  (The added lines are
PostScript comment lines, so the file may still be printed by itself.)  To
get EPS output, use the C<eps> mode and make only one plot per file.  In C<eps>
mode the whole plot, including the fonts, is reduced to half of the default
size.

Examples:

      set terminal postscript default       # old postscript
      set terminal postscript enhanced      # old enhpost
      set terminal postscript landscape 22  # old psbig
      set terminal postscript eps 14        # old epsf1
      set terminal postscript eps 22        # old epsf2
      set size 0.7,1.4; set term post portrait color "Times-Roman" 14

Linewidths and pointsizes may be changed with C<set linestyle>.

The C<postscript> driver supports about 70 distinct pointtypes, selectable
through the C<pointtype> option on C<plot> and C<set linestyle>.

Several possibly useful files about C<gnuplot>'s PostScript are included
in the /docs/ps subdirectory of the C<gnuplot> distribution and at the
distribution sites.  These are "ps_symbols.gpi" (a C<gnuplot> command file
that, when executed, creates the file "ps_symbols.ps" which shows all the
symbols available through the C<postscript> terminal), "ps_guide.ps" (a
PostScript file that contains a summary of the enhanced syntax and a page
showing what the octal codes produce with text and symbol fonts) and
"ps_file.doc" (a text file that contains a discussion of the organization
of a PostScript file written by C<gnuplot>).

A PostScript file is editable, so once C<gnuplot> has created one, you are
free to modify it to your heart's desire.  See the "editing postscript"
section for some hints.



=head2 enhanced postscript

  Control      Examples        Explanation
   ^           a^x             superscript
   _           a_x             subscript
   @           @x or a@^b_c    phantom box (occupies no width)
   &           &{space}        inserts space of specified length


Braces can be used to place multiple-character text where a single character
is expected (e.g., 2^{10}).  To change the font and/or size, use the full
form:  {/[fontname][=fontsize | *fontscale] text}.  Thus {/Symbol=20 G} is a
20-point GAMMA) and {/*0.75 K} is a K at three-quarters of whatever fontsize
is currently in effect.  (The '/' character MUST be the first character after
the '{'.)

If the encoding vector has been changed by C<set encoding>, the default
encoding vector can be used instead by following the slash with a dash.  This
is unnecessary if you use the Symbol font, however---since /Symbol uses its
own encoding vector, C<gnuplot> will not apply any other encoding vector to
it.

The phantom box is useful for a@^b_c to align superscripts and subscripts
but does not work well for overwriting an accent on a letter.  (To do the
latter, it is much better to use C<set encoding iso_8859_1> to change to the
ISO Latin-1 encoding vector, which contains a large variety of letters with
accents or other diacritical marks.)  Since the box is non-spacing, it is
sensible to put the shorter of the subscript or superscript in the box (that
is, after the @).

Space equal in length to a string can be inserted using the '&' character.
Thus

        'abc&{def}ghi'

would produce

        'abc   ghi'.

You can access special symbols numerically by specifying \character-code (in
octal), e.g., {/Symbol \245} is the symbol for infinity.

You can escape control characters using \, e.g.,  \\, \{, and so on.

But be aware that strings in double-quotes are parsed differently than those
enclosed in single-quotes.  The major difference is that backslashes may need
to be doubled when in double-quoted strings.

Examples (these are hard to describe in words---try them!):

      set xlabel 'Time (10^6 {/Symbol m}s)'
      set title '{/Symbol=18 \362@_{/=9.6 0}^{/=12 x}} \
                 {/Helvetica e^{-{/Symbol m}^2/2} d}{/Symbol m}'

The file "ps_guide.ps" in the /docs/ps subdirectory of the C<gnuplot> source
distribution contains more examples of the enhanced syntax.



=head2 editing postscript

The PostScript language is a very complex language---far too complex to
describe in any detail in this document.  Nevertheless there are some things
in a PostScript file written by C<gnuplot> that can be changed without risk of
introducing fatal errors into the file.

For example, the PostScript statement "/Color true def" (written into the
file in response to the command C<set terminal postscript color>), may be
altered in an obvious way to generate a black-and-white version of a plot.
Similarly line colors, text colors, line weights and symbol sizes can also be
altered in straight-forward ways.  Text (titles and labels) can be edited to
correct misspellings or to change fonts.  Anything can be repositioned, and
of course anything can be added or deleted, but modifications such as these
may require deeper knowledge of the PostScript language.

The organization of a PostScript file written by C<gnuplot> is discussed in
the text file "ps_file.doc" in the /docs/ps subdirectory.



=head1 pslatex and pstex

The C<pslatex> and C<pstex> drivers generate output for further processing by
LaTeX and TeX, respectively.  Figures generated by C<pstex> can be included
in any plain-based format (including LaTeX).

Syntax:

      set terminal pslatex | |pstex {<color>} {<dashed>} {<rotate>}
                                    {auxfile} {<font_size>}

<color> is either C<color> or C<monochrome>.  <rotate> is either C<rotate> or
C<norotate> and determines if the y-axis label is rotated.  <font_size> is
used to scale the font from its usual size.

If C<auxfile> is specified, it directs the driver to put the PostScript
commands into an auxiliary file instead of directly into the LaTeX file.
This is useful if your pictures are large enough that dvips cannot handle
them.  The name of the auxiliary PostScript file is derived from the name of
the TeX file given on the C<set output> command; it is determined by replacing
the trailing C<.tex> (actually just the final extent in the file name---and
the option will be turned off if there is no extent) with C<.ps> in the output
file name.  Remember to close the file before leaving C<gnuplot>.

All drivers for LaTeX offer a special way of controlling text positioning:
If any text string begins with '{', you also need to include a '}' at the
end of the text, and the whole text will be centered both horizontally
and vertically by LaTeX. --- If the text string begins with '[', you need
to continue it with: a position specification (up to two out of t,b,l,r),
']{', the text itself, and finally, '}'. The text itself may be anything
LaTeX can typeset as an LR-box. \rule{}{}'s may help for best positioning.

Examples:

      set term pslatex monochrome dashed rotate       # set to defaults

To write the PostScript commands into the file "foo.ps":

      set term pslatex auxfile
      set output "foo.tex"; plot ...: set output

About label positioning:
Use gnuplot defaults (mostly sensible, but sometimes not really best):

       set title '\LaTeX\ -- $ \gamma $'

Force centering both horizontally and vertically:

       set label '{\LaTeX\ -- $ \gamma $}' at 0,0

Specify own positioning (top here):

       set xlabel '[t]{\LaTeX\ -- $ \gamma $}'

The other label -- account for long ticlabels:

       set ylabel '[r]{\LaTeX\ -- $ \gamma $\rule{7mm}{0pt}'

Linewidths and pointsizes may be changed with C<set linestyle>.



=head1 pstricks

The C<pstricks> driver is intended for use with the "pstricks.sty" macro
package for LaTeX.  It is an alternative to the C<eepic> and C<latex> drivers.
You need "pstricks.sty", and, of course, a printer that understands
PostScript, or a converter such as Ghostscript.

PSTricks is available via anonymous ftp from the /pub directory at
Princeton.EDU.  This driver definitely does not come close to using the full
capability of the PSTricks package.

Syntax:

      set terminal pstricks {hacktext | nohacktext} {unit | nounit}

The first option invokes an ugly hack that gives nicer numbers; the second
has to do with plot scaling.  The defaults are C<hacktext> and C<nounit>.



=head1 qms

The C<qms> terminal driver supports the QMS/QUIC Laser printer, the Talaris
1200 and others.  It has no options.



=head1 regis

The C<regis> terminal device generates output in the REGIS graphics language.
It has the option of using 4 (the default) or 16 colors.

Syntax:

      set terminal regis {4 | 16}



=head1 rgip

The C<rgip> and C<uniplex> terminal drivers support RGIP metafiles.  They can
combine several graphs on a single page, but only one page is allowed in a
given output file.

Syntax:

      set terminal rgip | uniplex {portrait | landscape}
                                  {[<horiz>,<vert>]} {<fontsize>}

permissible values for the font size are in the range 1--8, with the default
being 1.  The default layout is landscape.  Graphs are placed on the page in
a C<horiz>xC<vert> grid, which defaults to [1,1].

Example:

      set terminal uniplex portrait [2,3]

puts six graphs on a page in three rows of two in portrait orientation.



=head1 sun

The C<sun> terminal driver supports the SunView window system.  It has no
options.



=head1 tek410x

The C<tek410x> terminal driver supports the 410x and 420x family of Tektronix
terminals.  It has no options.



=head1 table

Instead of producing a graph, the C<table> terminal prints out the points on
which a graph would be based, i.e., the results of processing the C<plot> or
C<splot> command, in a multicolumn ASCII table of X Y {Z} R values.  The
character R takes on one of three values: "i" if the point is in the active
range, "o" if it is out-of-range, or "u" if it is undefined.  The data
format is determined by the format of the axis labels (see C<set format>).

For those times when you want the numbers, you can display them on the
screen or save them to a file.  This can be useful if you want to generate
contours and then save them for further use, perhaps for plotting with
C<plot>;  see C<set contour> for an example.  The same method can be used to
save interpolated data (see C<set samples> and C<set dgrid3d>).



=head1 tek40

This family of terminal drivers supports a variety of VT-like terminals.
C<tek40xx> supports Tektronix 4010 and others as well as most TEK emulators;
C<vttek> supports VT-like tek40xx terminal emulators; C<kc-tek40xx> supports
MS-DOS Kermit Tek4010 terminal emulators in color: C<km-tek40xx> supports them
in monochrome; C<selanar> supports Selanar graphics; and C<bitgraph> supports
BBN Bitgraph terminals.  None have any options.



=head1 texdraw

The C<texdraw> terminal driver supports the LaTeX texdraw environment.  It is
intended for use with "texdraw.sty" and "texdraw.tex" in the texdraw package.

It has no options.



=head1 tgif

Tgif is an X11-based drawing tool---it has nothing to do with GIF.

The C<tgif> driver supports different pointsizes (with C<set pointsize>),
different label fonts and font sizes (e.g. C<set label "Hallo" at x,y font
"Helvetica,34">) and multiple graphs on the page.  The proportions of the
axes are not changed.

Syntax:

      set terminal tgif {portrait | landscape} {<[x,y]>}
                        {solid | dashed}
                        {"<fontname>"} {<fontsize>}

where <[x,y]> specifies the number of graphs in the x and y directions on the
page, "<fontname>" is the name of a valid PostScript font, and <fontsize>
specifies the size of the PostScript font.  Defaults are C<portrait>, C<[1,1]>,
C<dashed>, C<"Helvetica">, and C<18>.

The C<solid> option is usually prefered if lines are colored, as they often
are in the editor.  Hardcopy will be black-and-white, so C<dashed> should be
chosen for that.

Multiplot is implemented in two different ways.

The first multiplot implementation is the standard gnuplot multiplot feature:

      set terminal tgif
      set output "file.obj"
      set multiplot
      set origin x01,y01
      set size  xs,ys
      plot ...
           ...
      set origin x02,y02
      plot ...
      set nomultiplot

See C<set multiplot> for further information.

The second version is the [x,y] option for the driver itself.  The advantage
of this implementation is that everything is scaled and placed automatically
without the need for setting origins and sizes; the graphs keep their natural
x/y proportions of 3/2 (or whatever is fixed by C<set size>).

If both multiplot methods are selected, the standard method is chosen and a
warning message is given.

Examples of single plots (or standard multiplot):

      set terminal tgif                  # defaults
      set terminal tgif "Times-Roman" 24
      set terminal tgif landscape
      set terminal tgif landscape solid

Examples using the built-in multiplot mechanism:

      set terminal tgif portrait [2,4]  # portrait; 2 plots in the x-
                                        # and 4 in the y-direction
      set terminal tgif [1,2]           # portrait; 1 plot in the x-
                                        # and 2 in the y-direction
      set terminal tgif landscape [3,3] # landscape; 3 plots in both
                                        # directions



=head1 tkcanvas

This terminal driver generates tk canvas widget commands.  To use it, rebuild
C<gnuplot> (after uncommenting or inserting the appropriate line in "term.h"),
then

 gnuplot> set term tkcanvas
 gnuplot> set output 'plot.file'

After invoking "wish", execute the following sequence of tcl commands:

 % source plot.file
 % canvas .c
 % pack .c
 % gnuplot .c

The code generated by C<gnuplot> creates a tcl procedure called "gnuplot"
that takes the name of a canvas as its argument.  When the procedure is,
called, it clears the canvas, finds the size of the canvas and draws the plot
in it, scaled to fit.

The current version of C<tkcanvas> supports neither C<multiplot> nor C<replot>.



=head1 tpic

The C<tpic> terminal driver supports the LaTeX picture environment with tpic
\specials.  It is an alternative to the C<latex> and C<eepic> terminal drivers.
Options are the point size, line width, and dot-dash interval.

Syntax:

      set terminal tpic <pointsize> <linewidth> <interval>

where C<pointsize> and C<linewidth> are integers in milli-inches and C<interval>
is a float in inches.  If a non-positive value is specified, the default is
chosen: pointsize = 40, linewidth = 6, interval = 0.1.

All drivers for LaTeX offer a special way of controlling text positioning:
If any text string begins with '{', you also need to include a '}' at the
end of the text, and the whole text will be centered both horizontally
and vertically by LaTeX. --- If the text string begins with '[', you need
to continue it with: a position specification (up to two out of t,b,l,r),
']{', the text itself, and finally, '}'. The text itself may be anything
LaTeX can typeset as an LR-box. \rule{}{}'s may help for best positioning.

Examples:
About label positioning:
Use gnuplot defaults (mostly sensible, but sometimes not really best):

       set title '\LaTeX\ -- $ \gamma $'

Force centering both horizontally and vertically:

       set label '{\LaTeX\ -- $ \gamma $}' at 0,0

Specify own positioning (top here):

       set xlabel '[t]{\LaTeX\ -- $ \gamma $}'

The other label -- account for long ticlabels:

       set ylabel '[r]{\LaTeX\ -- $ \gamma $\rule{7mm}{0pt}'



=head1 unixpc

The C<unixpc> terminal driver supports AT&T 3b1 and AT&T 7300 Unix PC.  It has
no options.



=head1 unixplot

The C<unixplot> terminal driver generates output in the Unix "plot" graphics
language.  It has no options.

This terminal cannot be compiled if the GNU version of plot is to be used;
in that case, use the C<gnugraph> terminal instead.



=head1 vx384

The C<vx384> terminal driver supports the Vectrix 384 and Tandy color
printers.  It has no options.



=head1 VWS

The C<VWS> terminal driver supports the VAX Windowing System.  It has
no options.  It will sense the display type (monochrome, gray scale,
or color.)  All line styles are plotted as solid lines.



=head1 windows

Three options may be set in the C<windows> terminal driver.

Syntax:

      set terminal windows {<color>} {"<fontname>"} {<fontsize>}

where C<<color>> is either C<color> or C<monochrome>, C<"<fontname>"> is the
name of a valid Windows font, and C<<fontsize>> is the size of the font in
points.

Other options may be set with the graph-menu, the initialization file,
and C<set linestyle>.

The Windows version normally terminates immediately as soon as the end of
any files given as command line arguments is reached (i.e. in non-interactive
mode). It will also not show the text-window at all, in this mode, only
the plot. By giving the optional argument
C</noend> or C<-noend>, you can disable this behaviour.



=head2 graph-menu

The C<gnuplot graph> window has the following options on a pop-up menu
accessed by pressing the right mouse button or selecting C<Options> from the
system menu:

C<Bring to Top> when checked brings the graph window to the top after every
plot.

C<Color> when checked enables color linestyles.  When unchecked it forces
monochrome linestyles.

C<Copy to Clipboard> copies a bitmap and a Metafile picture.

C<Background...> sets the window background color.

C<Choose Font...> selects the font used in the graphics window.

C<Line Styles...> allows customization of the line colors and styles.

C<Print...> prints the graphics windows using a Windows printer driver and
allows selection of the printer and scaling of the output.  The output
produced by C<Print> is not as good as that from C<gnuplot>'s own printer
drivers.

C<Update wgnuplot.ini> saves the current window locations, window sizes, text
window font, text window font size, graph window font, graph window font
size, background color and linestyles to the initialization file
C<WGNUPLOT.INI>.



=head2 printing

In order of preference, graphs may be be printed in the following ways.

C<1.> Use the C<gnuplot> command C<set terminal> to select a printer and C<set
output> to redirect output to a file.

C<2.> Select the C<Print...> command from the C<gnuplot graph> window.  An extra
command C<screendump> does this from the text window.

C<3.> If C<set output "PRN"> is used, output will go to a temporary file.  When
you exit from C<gnuplot> or when you change the output with another C<set
output> command, a dialog box will appear for you to select a printer port.
If you choose OK, the output will be printed on the selected port, passing
unmodified through the print manager.  It is possible to accidentally (or
deliberately) send printer output meant for one printer to an incompatible
printer.



=head2 text-menu

The C<gnuplot text> window has the following options on a pop-up menu accessed
by pressing the right mouse button or selecting C<Options> from the system
menu:

C<Copy to Clipboard> copies marked text to the clipboard.

C<Paste> copies text from the clipboard as if typed by the user.

C<Choose Font...> selects the font used in the text window.

C<System Colors> when selected makes the text window honor the System Colors
set using the Control Panel.  When unselected, text is black or blue on a
white background.

C<Update wgnuplot.ini> saves the current text window location, text window
size, text window font and text window font size to the initialisation file
C<WGNUPLOT.INI>.

C<MENU BAR>

If the menu file C<WGNUPLOT.MNU> is found in the same directory as
WGNUPLOT.EXE, then the menu specified in C<WGNUPLOT.MNU> will be loaded.
Menu commands:

[Menu] starts a new menu with the name on the following line.

[EndMenu] ends the current menu.

[--] inserts a horizontal menu separator.

[|] inserts a vertical menu separator.

[Button] puts the next macro on a push button instead of a menu.

Macros take two lines with the macro name (menu entry) on the first line and
the macro on the second line.  Leading spaces are ignored.  Macro commands:

[INPUT] --- Input string with prompt terminated by [EOS] or {ENTER}

[EOS] --- End Of String terminator.  Generates no output.

[OPEN] --- Get name of file to open from list box, with title of list box
terminated by [EOS], followed by default filename terminated by [EOS] or
{ENTER}.  This uses COMMDLG.DLL from Windows 3.1.

[SAVE] --- Get name of file to save.  Similar to [OPEN]

Macro character substitutions:

{ENTER} --- Carriage Return '\r'

{TAB} --- Tab '\011'

{ESC} --- Escape '\033'

{^A} --- '\001'

...

{^_} --- '\031'

Macros are limited to 256 characters after expansion.



=head2 wgnuplot.ini

Windows C<gnuplot> will read some of its options from the C<[WGNUPLOT]> section
of C<WGNUPLOT.INI> in the Windows directory.  A sample C<WGNUPLOT.INI> file:

      [WGNUPLOT]
      TextOrigin=0 0
      TextSize=640 150
      TextFont=Terminal,9
      GraphOrigin=0 150
      GraphSize=640 330
      GraphFont=Arial,10
      GraphColor=1
      GraphToTop=1
      GraphBackground=255 255 255
      Border=0 0 0 0 0
      Axis=192 192 192 2 2
      Line1=0 0 255 0 0
      Line2=0 255 0 0 1
      Line3=255 0 0 0 2
      Line4=255 0 255 0 3
      Line5=0 0 128 0 4

The C<GraphFont> entry specifies the font name and size in points.  The five
numbers given in the C<Border>, C<Axis> and C<Line> entries are the C<Red>
intensity (0--255), C<Green> intensity, C<Blue> intensity, C<Color Linestyle>
and C<Mono Linestyle>.  C<Linestyles> are 0=SOLID, 1=DASH, 2=DOT, 3=DASHDOT,
4=DASHDOTDOT.  In the sample C<WGNUPLOT.INI> file above, Line 2 is a green
solid line in color mode, or a dashed line in monochrome mode.  The default
line width is 1 pixel.  If C<Linestyle> is negative, it specifies the width of
a SOLID line in pixels.  Line1 and any linestyle used with the C<points> style
must be SOLID with unit width.



=head2 windows3.0

Windows 3.1 is preferred, but WGNUPLOT will run under Windows 3.0 with the
following restrictions:
C<1.> COMMDLG.DLL and SHELL.DLL (available with Windows 3.1 or Borland C++
3.1) must be in the windows directory.

C<2.> WGNUPLOT.HLP produced by Borland C++ 3.1 is in Windows 3.1 format.
You need to use the WINHELP.EXE supplied with Borland C++ 3.1.

C<3.> It will not run in real mode due to lack of memory.

C<4.> TrueType fonts are not available in the graph window.

C<5.> Drag-drop does not work.



=head1 x11

C<gnuplot> provides the C<x11> terminal type for use with X servers.  This
terminal type is set automatically at startup if the C<DISPLAY> environment
variable is set, if the C<TERM> environment variable is set to C<xterm>, or
if the C<-display> command line option is used.

Syntax:

      set terminal x11 {reset} {<n>}

Multiple plot windows are supported: C<set terminal x11 <n>> directs the
output to plot window number n.  If n>0, the terminal number will be
appended to the window title and the icon will be labeled C<gplt <n>>.
The active window may distinguished by a change in cursor (from default
to crosshair.)

Plot windows remain open even when the C<gnuplot> driver is changed to a
different device.  A plot window can be closed by pressing the letter q
while that window has input focus, or by choosing C<close> from a window
manager menu.  All plot windows can be closed by specifying C<reset>, which
actually terminates the subprocess which maintains the windows (unless
C<-persist> was specified).

Plot windows will automatically be closed at the end of the session
unless the C<-persist> option was given.

The size or aspect ratio of a plot may be changed by resizing the C<gnuplot>
window.

Linewidths and pointsizes may be changed from within C<gnuplot> with
C<set linestyle>.

For terminal type C<x11>, C<gnuplot> accepts (when initialized) the standard
X Toolkit options and resources such as geometry, font, and name from the
command line arguments or a configuration file.  See the X(1) man page
(or its equivalent) for a description of such options.

A number of other C<gnuplot> options are available for the C<x11> terminal.
These may be specified either as command-line options when C<gnuplot> is
invoked or as resources in the configuration file "/.Xdefaults".  They are
set upon initialization and cannot be altered during a C<gnuplot> session.



=head2 command-line_options

In addition to the X Toolkit options, the following options may be specified
on the command line when starting C<gnuplot> or as resources in your
".Xdefaults" file:

  `-clear`   requests that the window be cleared momentarily before a
             new plot is displayed.
  `-gray`    requests grayscale rendering on grayscale or color displays.
             (Grayscale displays receive monochrome rendering by default.)
  `-mono`    forces monochrome rendering on color displays.
  `-persist` plot windows survive after main gnuplot program exits
  `-raise`   raise plot window after each plot
  `-noraise` do not raise plot window after each plot
  `-tvtwm`   requests that geometry specifications for position of the
             window be made relative to the currently displayed portion
             of the virtual root.

The options are shown above in their command-line syntax.  When entered as
resources in ".Xdefaults", they require a different syntax.

Example:

      gnuplot*gray: on

C<gnuplot> also provides a command line option (C<-pointsize <v>>) and a
resource, C<gnuplot*pointsize: <v>>, to control the size of points plotted
with the C<points> plotting style.  The value C<v> is a real number (greater
than 0 and less than or equal to ten) used as a scaling factor for point
sizes.  For example, C<-pointsize 2> uses points twice the default size, and
C<-pointsize 0.5> uses points half the normal size.



=head2 monochome_options

For monochrome displays, C<gnuplot> does not honor foreground or background
colors.  The default is black-on-white.  C<-rv> or C<gnuplot*reverseVideo: on>
requests white-on-black.




=head2 color_resources

For color displays, C<gnuplot> honors the following resources (shown here
with their default values) or the greyscale resources.  The values may be
color names as listed in the X11 rgb.txt file on your system, hexadecimal
RGB color specifications (see X11 documentation), or a color name followed
by a comma and an C<intensity> value from 0 to 1.  For example, C<blue, 0.5>
means a half intensity blue.

  gnuplot*background:  white
  gnuplot*textColor:   black
  gnuplot*borderColor: black
  gnuplot*axisColor:   black
  gnuplot*line1Color:  red
  gnuplot*line2Color:  green
  gnuplot*line3Color:  blue
  gnuplot*line4Color:  magenta
  gnuplot*line5Color:  cyan
  gnuplot*line6Color:  sienna
  gnuplot*line7Color:  orange
  gnuplot*line8Color:  coral


The command-line syntax for these is, for example,

Example:

      gnuplot -background coral




=head2 grayscale_resources

When C<-gray> is selected, C<gnuplot> honors the following resources for
grayscale or color displays (shown here with their default values).  Note
that the default background is black.

  gnuplot*background: black
  gnuplot*textGray:   white
  gnuplot*borderGray: gray50
  gnuplot*axisGray:   gray50
  gnuplot*line1Gray:  gray100
  gnuplot*line2Gray:  gray60
  gnuplot*line3Gray:  gray80
  gnuplot*line4Gray:  gray40
  gnuplot*line5Gray:  gray90
  gnuplot*line6Gray:  gray50
  gnuplot*line7Gray:  gray70
  gnuplot*line8Gray:  gray30





=head2 line_resources

C<gnuplot> honors the following resources for setting the width (in pixels) of
plot lines (shown here with their default values.)  0 or 1 means a minimal
width line of 1 pixel width.  A value of 2 or 3 may improve the appearance of
some plots.

  gnuplot*borderWidth: 2
  gnuplot*axisWidth:   0
  gnuplot*line1Width:  0
  gnuplot*line2Width:  0
  gnuplot*line3Width:  0
  gnuplot*line4Width:  0
  gnuplot*line5Width:  0
  gnuplot*line6Width:  0
  gnuplot*line7Width:  0
  gnuplot*line8Width:  0


C<gnuplot> honors the following resources for setting the dash style used for
plotting lines.  0 means a solid line.  A two-digit number C<jk> (C<j> and C<k>
are >= 1  and <= 9) means a dashed line with a repeated pattern of C<j> pixels
on followed by C<k> pixels off.  For example, '16' is a "dotted" line with one
pixel on followed by six pixels off.  More elaborate on/off patterns can be
specified with a four-digit value.  For example, '4441' is four on, four off,
four on, one off.  The default values shown below are for monochrome displays
or monochrome rendering on color or grayscale displays.  For color displays,
the default for each is 0 (solid line) except for C<axisDashes> which defaults
to a '16' dotted line.

  gnuplot*borderDashes:   0
  gnuplot*axisDashes:    16
  gnuplot*line1Dashes:    0
  gnuplot*line2Dashes:   42
  gnuplot*line3Dashes:   13
  gnuplot*line4Dashes:   44
  gnuplot*line5Dashes:   15
  gnuplot*line6Dashes: 4441
  gnuplot*line7Dashes:   42
  gnuplot*line8Dashes:   13




=head1 xlib

The C<xlib> terminal driver supports the X11 Windows System.  It generates
gnulib_x11 commands.  C<set term x11> behaves similarly to C<set terminal xlib;
set output "|gnuplot_x11">.  C<xlib> has no options, but see C<x11>.



=head1 AUTHOR

Autogenerated from F<*.trm> files in C<gnuplot> terminals subdirectory.

=head1 SEE ALSO

L<Term::Gnuplot>.

