home *** CD-ROM | disk | FTP | other *** search
/ ProfitPress Mega CDROM2 …eeware (MSDOS)(1992)(Eng) / ProfitPress-MegaCDROM2.B6I / GRAPHICS / PLOT / GPLOT_3D.ZIP / GNUPLOT.GIH < prev    next >
Encoding:
Text File  |  1991-04-12  |  62.1 KB  |  1,702 lines

  1. ?
  2.  GNUPLOT is a command-driven interactive function plotting program.  It
  3.  is case sensitive (commands and function names written in lowercase
  4.  are not the same as those written in CAPS).  All command names may be
  5.  abbreviated, as long as the abbreviation is not ambiguous.  Any number
  6.  of commands may appear on a line, separated by semicolons (;). 
  7.  
  8.  Any command-line arguments are assumed to be names of files containing 
  9.  gnuplot commands, with the exception of standard X11 arguments, which
  10.  are processed first. Each file is loaded with the `load` command, in the
  11.  order specified. Gnuplot exits after the last file is processed.
  12.  
  13.  Commands may extend over several input lines, by ending each line but
  14.  the last with a backslash (\). The backslash must be the LAST
  15.  character on each line. The effect is as if the backslash and newline
  16.  were not there. That is, no white space is implied, nor is a comment
  17.  terminated. Therefore, commenting out a continued line comments out
  18.  the entire command (see `comment`).
  19.  
  20.  In this documentation, curly braces ({}) denote optional arguments to
  21.  many commands.
  22.  
  23.  For help on any topic, type 'help' followed by the name of the topic.
  24. ?cd
  25.  The `cd` command changes working directory.
  26.  
  27.  Syntax:
  28.          cd <directory-name>
  29.  
  30.  The directory name must be enclosed in quotes.
  31.  
  32.  Examples:
  33.  
  34.          cd 'subdir'
  35.          cd ".."
  36. ?clear
  37.  The `clear` command erases the current screen or output device as
  38.  specified by `set output`.  This usually generates a formfeed on
  39.  hardcopy devices.  Use `set terminal` to set the device type. 
  40. ?comments
  41.  Comments are supported as follows: a # may appear in most places in a line
  42.  and GNUPLOT will ignore the rest of the line. It will not have this
  43.  effect inside quotes, inside numbers (including complex numbers), inside
  44.  command substitutions, etc. In short, it works anywhere it makes sense
  45.  to work.
  46. ?environment
  47.  A number of shell environment variables are understood by GNUPLOT.
  48.  None of these are required, but may be useful.
  49.  
  50.  If GNUTERM is defined, it is used as the name of the terminal type to
  51.  be used. This overrides any terminal type sensed by GNUPLOT on start
  52.  up, but is itself overridden by the .gnuplot (or equivalent) start-up
  53.  file (see help start-up), and of course by later explicit changes.
  54.  
  55.  On Unix and MS-DOS, GNUHELP may be defined to be the pathname of the 
  56.  HELP file (gnuplot.gih).
  57.  
  58.  On VMS, the symbol GNUPLOT$HELP should be defined as the name of 
  59.  the help library for gnuplot.
  60.  
  61.  On Unix, HOME is used as the name of a directory to search for 
  62.  a .gnuplot file if none is found in the current directory. 
  63.  On MS-DOS, GNUPLOT is used.  On VMS, SYS$LOGIN: is used.  
  64.  See help start-up.  
  65.  
  66.  On Unix, PAGER is used as an output filter for help messages. SHELL
  67.  is used for the `shell` command.
  68.  
  69.  On MS-DOS, COMSPEC is used for the `shell` command. 
  70. ?exit
  71. ?quit
  72.  The commands `exit` and `quit` and your computer's END-OF-FILE character
  73.  will exit GNUPLOT.  All these commands will clear the output device
  74.  (as the `clear` command does) before exiting. 
  75. ?expressions
  76.  In general, any mathematical expression accepted by C, FORTRAN,
  77.  Pascal, or BASIC is valid.  The precedence of these operators is
  78.  determined by the specifications of the C programming language.
  79.  White space (spaces and tabs) is ignored inside expressions. 
  80.  
  81.  Complex constants may be expressed as the {<real>,<imag>}, where <real>
  82.  and <imag> must be numerical constants.  For example {3,2}
  83.  represents 3 + 2i; {0,1} represents `i` itself. The curly braces 
  84.  are explicitly required here. 
  85. ?expressions functions
  86. ?functions
  87.  The functions in GNUPLOT are the same as the corresponding functions
  88.  in the UNIX math library, except that all functions accept integer,
  89.  real, and complex arguments, unless otherwise noted.  The `sgn`
  90.  function is also supported, as in BASIC. 
  91. ?expressions functions abs
  92. ?functions abs
  93. ?abs
  94.  The `abs` function returns the absolute value of its argument.  The
  95.  returned value is of the same type as the argument. 
  96.  
  97.  For complex arguments, abs(x) is defined as the length of x in the
  98.  complex plane [i.e.,  sqrt(real(x)**2 + imag(x)**2) ].
  99. ?expressions functions acos
  100. ?functions acos
  101. ?acos
  102.  The `acos` function returns the arc cosine (inverse cosine) of its
  103.  argument.  `acos` returns its argument in radians. 
  104. ?expressions functions arg
  105. ?functions arg
  106. ?arg
  107.  The `arg` function returns the phase of a complex number, in radians.  
  108. ?expressions functions asin
  109. ?functions asin
  110. ?asin
  111.  The `asin` function returns the arc sin (inverse sin) of its argument.
  112.  `asin` returns its argument in radians. 
  113. ?expressions functions atan
  114. ?functions atan
  115. ?atan
  116.  The `atan` function returns the arc tangent (inverse tangent) of its
  117.  argument.  `atan` returns its argument in radians. 
  118. ?expressions functions besj0
  119. ?functions besj0
  120. ?besj0
  121.  The `besj0` function returns the j0th Bessel function of its argument.
  122.  `besj0` expects its argument to be in radians.
  123. ?expressions functions besj1
  124. ?functions besj1
  125. ?besj1
  126.  The `besj1` function returns the j1st Bessel function of its argument.
  127.  `besj1` expects its argument to be in radians.
  128. ?expressions functions besy0
  129. ?functions besy0
  130. ?besy0
  131.  The `besy0` function returns the y0th Bessel function of its argument.
  132.  `besy0` expects its argument to be in radians.
  133. ?expressions functions besy1
  134. ?functions besy1
  135. ?besy1
  136.  The `besy1` function returns the y1st Bessel function of its argument.
  137.  `besy1` expects its argument to be in radians.
  138. ?expressions functions ceil
  139. ?functions ceil
  140. ?ceil
  141.  The `ceil` function returns the smallest integer that is not less than its
  142.  argument.  For complex numbers, `ceil` returns the smallest integer
  143.  not less than the real part of its argument. 
  144. ?expressions functions cos
  145. ?functions cos
  146. ?cos
  147.  The `cos` function returns the cosine of its argument.  `cos` expects its
  148.  argument to be in radians. 
  149. ?expressions functions cosh
  150. ?functions cosh
  151. ?cosh
  152.  The `cosh` function returns the hyperbolic cosine of its argument.
  153.  `cosh` expects its argument to be in radians. 
  154. ?expressions functions exp
  155. ?functions exp
  156. ?exp
  157.  The `exp` function returns the exponential function of its argument
  158.  (`e` raised to the power of its argument). 
  159. ?expressions functions floor
  160. ?functions floor
  161. ?floor
  162.  The `floor` function returns the largest integer not greater than its
  163.  argument.  For complex numbers, `floor` returns the largest
  164.  integer not greater than the real part of its argument. 
  165. ?expressions functions imag
  166. ?functions imag
  167. ?imag
  168.  The `imag` function returns the imaginary part of its argument as a
  169.  real number. 
  170. ?expressions functions int
  171. ?functions int
  172. ?int
  173.  The `int` function returns the integer part of its argument, truncated
  174.  toward zero. 
  175. ?expressions functions log
  176. ?functions log
  177. ?log
  178.  The `log` function returns the natural logarithm (base `e`) of its
  179.  argument. 
  180. ?expressions functions log10
  181. ?functions log10
  182. ?log10
  183.  The `log10` function returns the logarithm (base 10) of its argument.
  184. ?expressions functions real
  185. ?functions real
  186. ?real
  187.  The `real` function returns the real part of its argument.
  188. ?expressions functions sgn
  189. ?functions sgn
  190. ?sgn
  191.  The `sgn` function returns 1 if its argument is positive, -1 if its
  192.  argument is negative, and 0 if its argument is 0.  If the argument
  193.  is a complex value, the imaginary component is ignored. 
  194. ?expressions functions sin
  195. ?functions sin
  196. ?sin
  197.  The `sin` function returns the sine of its argument.  `sin` expects its
  198.  argument to be in radians. 
  199. ?expressions functions sinh
  200. ?functions sinh
  201. ?sinh
  202.  The `sinh` function returns the hyperbolic sine of its argument.  `sinh`
  203.  expects its argument to be in radians. 
  204. ?expressions functions sqrt
  205. ?functions sqrt
  206. ?sqrt
  207.  The `sqrt` function returns the square root of its argument.
  208. ?expressions functions tan
  209. ?functions tan
  210. ?tan
  211.  The `tan` function returns the tangent of its argument.  `tan` expects
  212.  its argument to be in radians. 
  213. ?expressions functions tanh
  214. ?functions tanh
  215. ?tanh
  216.  The `tanh` function returns the hyperbolic tangent of its argument.
  217.  `tanh` expects its argument to be in radians. 
  218. ?expressions operators
  219. ?operators
  220.  The operators in GNUPLOT are the same as the corresponding operators
  221.  in the C programming language, except that all operators accept
  222.  integer, real, and complex arguments, unless otherwise noted.
  223.  The ** operator (exponentiation) is supported, as in FORTRAN.
  224.  
  225.  Parentheses may be used to change order of evaluation.
  226. ?expressions operators binary
  227. ?operators binary
  228. ?binary
  229.  The following is a list of all the binary operators and their
  230.  usages:
  231.  
  232.   Symbol      Example      Explanation
  233.    **          a**b          exponentiation
  234.    *           a*b           multiplication
  235.    /           a/b           division
  236.    %           a%b         * modulo
  237.    +           a+b           addition
  238.    -           a-b           subtraction
  239.    ==          a==b          equality
  240.    !=          a!=b          inequality
  241.    &           a&b         * bitwise AND
  242.    ^           a^b         * bitwise exclusive OR
  243.    |           a|b         * bitwise inclusive OR
  244.    &&          a&&b        * logical AND
  245.    ||          a||b        * logical OR
  246.    ?:          a?b:c       * ternary operation
  247.  
  248.  (*) Starred explanations indicate that the operator requires
  249.  integer arguments.
  250.  
  251.  Logical AND (&&) and OR (||) short-circuit the way they do in C.
  252.  That is, the second && operand is not evaluated if the first is
  253.  false; the second || operand is not evaluated if the first is true.
  254.  
  255.  The ternary operator evaluates its first argument (a).  If it is
  256.  true (non-zero) the second argument (b) is evaluated and returned,
  257.  otherwise the third argument (c) is evaluated and returned. 
  258. ?expressions operators unary
  259. ?operators unary
  260. ?unary
  261.  The following is a list of all the unary operators and their
  262.  usages:
  263.  
  264.   Symbol     Example      Explanation
  265.    -           -a          unary minus
  266.    ~           ~a        * one's complement
  267.    !           !a        * logical negation
  268.    !           a!        * factorial
  269.  
  270.  (*) Starred explanations indicate that the operator requires an
  271.  integer argument.
  272.  
  273.  The factorial operator returns a real number to allow a greater range.
  274. ?help
  275.  The `help` command displays on-line help.  To specify information on a
  276.  particular topic use the syntax:
  277.  
  278.      help <topic> 
  279.  
  280.  If <topic> is not specified, a short message is printed about
  281.  GNUPLOT. After help for the requested topic is given, help for
  282.  a subtopic may be requested by typing its name, extending the help
  283.  request. After that subtopic has been printed, you may extend the
  284.  request again, as before, or go back one level to the previous topic,
  285.  by simply pressing return without typing anything. Eventually, you
  286.  will return to the GNUPLOT command line.
  287. ?load
  288.  The `load` command executes each line of the specified input file as
  289.  if it had been typed in interactively.  Files created by the `save`
  290.  command can later be `load`ed.  Any text file containing valid
  291.  commands can be created and then executed by the `load` command.
  292.  Files being `load`ed may themselves contain `load` commands. See
  293.  `comment` for information about comments in commands. 
  294.  
  295.  The `load` command must be the last command on the line. 
  296.  
  297.  Syntax:
  298.          load <input-file>
  299.  
  300.  The name of the input file must be enclosed in quotes.
  301.  
  302.  Examples:
  303.  
  304.          load 'work.gnu'
  305.          load "func.dat"
  306.  
  307.  The `load` command is performed implicitly on any file names given as
  308.  arguments to gnuplot. These are loaded in the order specified, and
  309.  then gnuplot exits. 
  310. ?pause
  311.  Pause is useful in conjunction with `load` files.  The command `pause`
  312.  displays any text associated with the command and then waits the
  313.  specified amount of time.  This allows one to build a `load` file
  314.  and control the amount of time a finished graph is displayed.  The
  315.  first argument is an expression that can be -1, 0, or a positive
  316.  integer. Choosing -1 will wait until a carriage return is hit. Zero (0)
  317.  won't pause at all, and a positive integer (such as 1 or 15) will
  318.  wait the specified number of seconds. 
  319.  
  320.  Note: Since pause is not part of the plot it may interact with
  321.  different device drivers differently (depending upon how text and
  322.  graphics are mixed).
  323.  
  324.  Examples:
  325.          pause -1    ! Wait until a carriage return is hit
  326.          pause 3     ! Wait three seconds
  327.          pause -1  "Hit return to continue"
  328.          pause 10  "Isn't this pretty?  It's a cubic-spline."
  329.  
  330.  Syntax:
  331.          pause <expression> {"string"}
  332.  Note the string is optional, and if present must be enclosed in quotes.
  333. ?plot
  334. ?splot
  335.  `plot` and `splot` are the primary commands of the program.  They plot
  336.  functions and data in many, many ways.  `plot` is used to plot 2-d curves
  337.  and data, while `splot` plots 3-d surfaces and data.  The full syntax of 
  338.  these commands are:
  339.  
  340.    plot {ranges}  <function> {title} {style} {, <function> {title} {style}...}
  341.  
  342.    and
  343.  
  344.    splot {ranges}  <function> {title} {style} {, <function> {title} {style}...}
  345.  
  346.  Where <function> is either a mathematical expression, the name of a
  347.  data file enclosed in quotes, or a pair (plot) or triple (splot) of
  348.  mathematical expressions in the case of parametric functions.
  349.  User-defined functions and variables may also be defined here.
  350.  
  351.  Curly braces {,} denote optional items.
  352.  
  353.  `plot` and `splot` commands can be as simple as
  354.  
  355.   plot sin(x)
  356.  
  357.   and
  358.  
  359.   splot x * y
  360.  
  361.  or as complex as (!)
  362.  
  363.   plot [t=1:10] [-pi:pi*2] tan(t),"data.1" with lines,t**2 with points
  364. ?plot datafile
  365. ?plot data-file
  366. ?splot datafile
  367. ?splot data-file
  368. ?datafile
  369. ?data-file
  370. ?data
  371.  Discrete data contained in a file can displayed by specifying the
  372.  name of the data file (enclosed in quotes) on the `plot` command
  373.  line. 
  374.  
  375.  Data files should contain one data point per line.  A data point may
  376.  be specified either as an X and Y (and Z for splot) value separated by
  377.  blank space, or as just the Y (Z for splot) value, in which case the
  378.  program will use the number of the coordinate as the X (and Y for splot)
  379.  value.  Coordinate numbers start at 0 and are incremented for each data
  380.  point read.  To specify other formats, see `plot datafile using`. Lines
  381.  beginning with # (or ! on VMS) will be treated as comments and ignored.
  382.  
  383.  NOTE that blank lines cause a break in the input in plot command but not
  384.  for splot command in which blank lines are ignored. If the plot
  385.  style is `lines` or `linespoints` (see `plot style`) there will be no
  386.  line drawn between the preceding and following points. This does not
  387.  change the plot style, as would plotting the data as separate curves.
  388.  
  389.  This example compares the data in the file population.dat to a
  390.  theoretical curve:
  391.  
  392.          pop(x) = 103*exp((1965-x)/10)
  393.          plot [1960:1990] 'population.dat', pop(x)
  394.  
  395.          or
  396.  
  397.          splot 'glass.dat'
  398.  
  399.  The file population.dat might contain:
  400.  
  401.   # Gnu population in Antarctica since 1965
  402.   1965   103
  403.   1970   55
  404.   1975   34
  405.   1980   24
  406.   1985   10
  407.  
  408.  When data file is plotted, samples must be bigger than the data size.
  409.  However when it is splotted (3-d) samples should be exactly equal to the
  410.  first dimension of the data grid while isosamples to the second dimension
  411.  and the total number of points must be therefore samples * isosamples.
  412.  See also `set samples` and `set isosamples`.
  413. ?plot datafile using
  414. ?plot data-file using
  415. ?splot datafile using
  416. ?splot data-file using
  417. ?using
  418.  The format of data within a file can be selected with the `using` 
  419.  option.  The `xy` and `yx` specify the order of the `x` and `y` 
  420.  variables in the data file in the plot command. To reverse the variables
  421.  specify `yx`. splot command allows only the `xyz` order. To specify that
  422.  the datafile should contain one variable specify `y` (or `z` for splot).
  423.  
  424.  Syntax:
  425.  
  426.          plot "datafile" { using { xy | yx | y } {"scanf string"} } ...
  427.  
  428.          and
  429.  
  430.          splot "datafile" { using { xyz | z } {"scanf string"} } ...
  431.  
  432.  If the `xy`, `yx` or `y` option is omitted, `xy` is used for plot.
  433.  Similarly `xyz` will be used for splot. If the scanf string is omitted,
  434.  the default of `"%f%f"` is used for plot and `"%f %f %f"` for splot.
  435.  
  436.  Examples:
  437.  
  438.          plot "MyData" using yx "%*f%f%*20[^\n]%f" with lines
  439.  This causes data to be read from the file "MyData" using the format 
  440.  `yx "%*f%f%*20[^\n]%f"`.  The meaning of this format is: `%*f` 
  441.  ignore the first number, `%f` then read in the second and assign to y 
  442.  (the `yx` option of using), `%*20[^\n]` then ignore 20 non-newline 
  443.  characters, `%f` then read in the x value.
  444.  
  445.          plot "MyData" using "%f%f", "MyData" using "%f%*f%f"
  446.  Causes gnuplot to plot the second and third columns of MyData versus
  447.  the first column.
  448.  
  449.          splot "glass.dat" using z "%f"
  450.  Causes gnuplot to splot the first coordinate of the points of glass.dat
  451.  as the z splot component while ignoring the other two coordinates.
  452.  
  453.  Note: gnuplot first reads a line of the data file into a buffer and 
  454.  then does a 
  455.          sscanf(input_buffer, scanf_string, &x, &y{, &z});
  456.  where `x`, `y` and `z` are of type `float`.  Any scanf string that
  457.  specifies two (three for splot) `float` numbers may be used.
  458. ?plot parametric
  459. ?splot parametric
  460. ?parametric
  461.  When in parametric mode (`set parametric`) mathematical expressions must
  462.  be given in pairs for plot and in triplets for splot:
  463.   plot sin(t),t**2
  464.  
  465.   or
  466.  
  467.   splot cos(u)*cos(v),cos(u)*sin(v),sin(u)
  468.  
  469.  Data files are plotted as before, except the parametric function
  470.  must be fully specified before a data file is given as a plot.  In
  471.  other words, the x parametric function (sin(t) above) and the y 
  472.  parametric function (t**2 above) must not be interrupted with any 
  473.  modifiers or data functions; doing so will generate a syntax error
  474.  stating that the parametric function is not fully specified.
  475.  
  476.  Ranges take on a different meaning when in parametric mode.  The
  477.  first specifiable range on the plot command is the trange, the
  478.  next the xrange, and the last is the yrange. For splot the order is
  479.  urange, vrange, xrange, yrange and finally zrange. The following plot
  480.  shows setting the trange to [-pi:pi], the xrange to [-1.3:1.3]
  481.  and the yrange to [-1:1] for the duration of the plot:
  482.   plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2
  483.  
  484.  Other modifiers, such as `with` and `title` are required after
  485.  the function has been fully specified:
  486.   plot sin(t),t**2 with linespoints title 'Parametric example'
  487. ?splot ranges
  488. ?plot ranges
  489. ?ranges
  490.  The optional range specifies the region of the plot which will be displayed. 
  491.  
  492.  Ranges may be provided on the `plot` and `splot` command line and
  493.  affect only that plot, or in the `set xrange`, `set yrange` etc.
  494.  commands, to change the default ranges for future plots.
  495.  
  496.  Syntax:
  497.          [{dummy-var =} {xmin : xmax}] { [{ymin : ymax}] }
  498.  
  499.  Where dummy-var is the independent variable (the defaults are `x` and `y`,
  500.  but this may be changed with the `set dummy`) and the min and max terms
  501.  can be expressions or constants. 
  502.  
  503.  Both the min and max terms are optional.  The ':' is also optional
  504.  if neither a min nor a max term is specified.  This allows '[]' to
  505.  be used as a null range specification. 
  506.  
  507.  Specifying a range in the `plot` command line turns autoscaling for
  508.  that axis OFF for that plot. Using one of the `set` range commands
  509.  turns autoscaling off for that axis for future plots, unless changed
  510.  later. (See `set autoscale`).
  511.  
  512.  
  513.  Examples:
  514.  
  515.  This uses current ranges:
  516.          plot cos(x)
  517.  
  518.  This sets the xrange only:
  519.          plot [-10:30] sin(pi*x)/(pi*x)
  520.  
  521.  This is the same, but uses t as the dummy-variable:
  522.          plot [t = -10 :30]  sin(pi*t)/(pi*t)
  523.  
  524.  This sets both the x and yranges:
  525.          plot [-pi:pi] [-3:3]  tan(x), 1/x
  526.  
  527.  This sets only the yrange:
  528.          plot [] [-2:sin(5)*-8] sin(x)**besj0(x)
  529.  
  530.  This sets xmax and ymin only:
  531.          plot [:200] [-pi:]  exp(sin(x))
  532.  
  533.  This sets the x, y, and z ranges:
  534.          splot [0:3] [1:4] [-1:1] x*y
  535. ?plot style
  536. ?splot style
  537. ?style
  538.  Plots may be displayed in one of four styles: `lines`, `points`,
  539.  `linespoints`, `impulses`, or `dots`.  The `lines` style connects
  540.  adjacent points with lines. The `points` style displays a small
  541.  symbol at each point.  The `linespoints` style does both `lines` and
  542.  `points`. The `impulses` style displays a vertical line from the X
  543.  axis (or from the grid base for splot) to each point. The `dots` style 
  544.  plots a tiny dot at each point;
  545.  this is useful for scatter plots with many points.
  546.  
  547.  Default styles are chosen with the `set function style` and
  548.  `set data style` commands. 
  549.  
  550.  By default, each function and data file will use a different 
  551.  line type and point type, up to the maximum number of available 
  552.  types. All terminal drivers support at least six different point
  553.  types, and re-use them, in order, if more than six are required. 
  554.  The LaTeX driver supplies an additional six point types (all variants
  555.  of a circle), and thus will only repeat after twelve curves are
  556.  plotted with points.
  557.  
  558.  If desired, the actual line type and point type used for a plot can
  559.  be specified. Syntax:
  560.  
  561.          with <style> {<linetype> {<pointtype>}}
  562.  
  563.  Where <style> is either `lines`, `points`, `linespoints`, `impulses`,
  564.  or `dots`. These keywords may be abbreviated. 
  565.  Curly braces denote optional items.  The <linetype> and <pointtype> 
  566.  are positive integers, and specify the line type and point type to
  567.  be used for the plot.  Line type 1 is the first line type used by
  568.  default, line type 2 is the second line type used by default etc.
  569.  
  570.  Examples:
  571.  
  572.  This plots sin(x) with impulses:
  573.          plot sin(x) with impulses
  574.  
  575.  This plots x*y with points, x**2 + y**2 default:
  576.          splot x*y w points, x**2 + y**2
  577.  
  578.  This plots tan(x) with the default function style, "data.1" with lines:
  579.          plot [] [-2:5] tan(x), "data.1" with l
  580.  
  581.  This plots "leastsq.dat" with impulses:
  582.          plot 'leastsq.dat' w i
  583.  
  584.  This plots x**2 + y**2 and x**2 - y**2 with the same line type:
  585.          splot x**2 + y**2 with line 1, x**2 - y**2 with line 1
  586.  
  587.  This plots sin(x) and cos(x) with linespoints, using the
  588.  same line type but different point types:
  589.          plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
  590.  
  591.  This plots file "data" with points style 3:
  592.          plot "data" with points 1 3 
  593.  Note that the line style must be specified in order to specify the
  594.  point style, even when it is irrelevant. Here the line style is 1 and
  595.  the point style is 3, and the line style is irrelevant.
  596. ?plot title
  597. ?splot title
  598.  A title of each plot appears in the key.  By default the title is
  599.  the function or file name as it appears on the plot command line.
  600.  The title can be changed by using the `title` option. This option 
  601.  should precede any `with` option.
  602.  
  603.  Syntax:
  604.          title <title>
  605.  
  606.  Where <title> is the new title of the plot and must be enclosed in
  607.  quotes.
  608.  
  609.  Examples:
  610.  
  611.  This plots y=x with the title 'x':
  612.          plot x
  613.  
  614.  This plots z=x*y with the title 'x*y':
  615.          splot x*y title 'x*y'
  616.  
  617.  This plots x squared with title 'x^2' and "data.1" with title 'measured data':
  618.          plot x**2 title "x^2", "data.1" t 'measured data'
  619. ?print
  620.  The `print` command prints the value of <expression> to the screen.
  621.  
  622.  Syntax:
  623.          print <expression>
  624.  
  625.  See `expressions`.
  626. ?pwd
  627.  The `pwd` command prints the name of the working directory to the screen.
  628.  
  629.  Syntax:
  630.          pwd
  631. ?quit
  632.  The `exit` and `quit` commands and your computer's END-OF-FILE
  633.  character will exit GNUPLOT.  All these commands will clear the
  634.  output device (as the `clear` command does) before exiting. 
  635. ?replot
  636.  The `replot` command without arguments repeats the last `plot` or `splot`
  637.  command. This can be useful for viewing a plot with different `set`
  638.  options, or when generating the same plot for several devices.
  639.  
  640.  Arguments specified after a `replot` command will be added onto the last
  641.  `plot` (`splot`) command (with an implied ',' separator) before it is
  642.  repeated. `replot` accepts the same arguments as the `plot` or `splot`
  643.  commands except that ranges cannot be specified.
  644. ?save
  645.  The `save` command saves user-defined functions, variables, set
  646.  options or all three plus the last plot command to the specified file. 
  647.  
  648.  Syntax:
  649.          save  {<option>} <filename>
  650.  
  651.  Where <option> is `functions`, `variables` or `set`.  If no option is
  652.  used GNUPLOT saves functions, variables, set options and the last plot
  653.  command. 
  654.  
  655.  `save`d files are written in text format and may be read by the `load`
  656.  command.
  657.  
  658.  The filename must be enclosed in quotes.
  659.  
  660.  Examples:
  661.  
  662.          save "work.gnu"
  663.          save functions 'func.dat'
  664.          save var 'var.dat'
  665.          save set "options.dat"
  666. ?set
  667. ?show
  668.  The `set` command sets LOTS of options.
  669.  
  670.  The `show` command shows their settings.  `show all` shows all the
  671.  settings. 
  672. ?set arrow
  673. ?set noarrow
  674. ?show arrow
  675. ?arrow
  676. ?noarrow
  677.  Arbitrary arrows can be placed on the plot using the `set arrow`
  678.  command.
  679.  
  680.  Syntax:
  681.  
  682.           set arrow {tag} {from sx,sy{,sz}} {to ex,ey{,ez}}
  683.           set noarrow {tag}
  684.           show arrow
  685.  
  686.  
  687.  Curly braces {} denote optional items.
  688.  All positions x,y,z default to 0,0,0.
  689.  The x y and z values are in the graph's coordinate system. The z is
  690.  ignored for plot commands and is used in splot plots only.
  691.  The tag is an integer that is used to identify the arrow.
  692.  If no tag is given, the lowest unused tag value is assigned
  693.  automatically. The tag can be used to delete or change a specific
  694.  arrow. To change any attribute of an existing arrow, use the `set
  695.  arrow` command with the appropriate tag, and specify the parts of the
  696.  arrow to be changed.
  697.  
  698.  Arrows outside the plotted boundaries are permitted but may cause
  699.  device errors; use at your own risk.
  700.  
  701.  Examples:
  702.  
  703.  To set an arrow pointing from the origin to (1,2) use
  704.           set arrow to 1,2
  705.  To set an arrow from (-10,4,2) to (-5,5,3), and tag the arrow number 3, use:
  706.           set arrow 3 from -10,4,2 to -5,5,3
  707.  To change the preceding arrow begin at 1,1,1, use
  708.           set arrow 3 from 1,1,1
  709.  To delete arrow number 2 use:
  710.           set noarrow 2
  711.  To delete all arrows use:
  712.           set noarrow
  713.  To show all arrows (in tag order) use:
  714.           show arrow
  715. ?set autoscale
  716. ?show autoscale
  717. ?autoscale
  718.  Auto scaling may be set individually on the X, Y and/or Z axis or globally
  719.  on all axes. The default is to autoscale all axes.
  720.  
  721.  When autoscaling, the plot range is automatically computed and the
  722.  dependent axis (Y for a plot and Z for a 3-d splot) is scaled to include
  723.  the range of the function or data being plotted.
  724.  
  725.  If autoscaling of the dependent axis (Y or Z) is not set, the current
  726.  Y or Z range is used.
  727.  
  728.  See `set yrange`, or `set zrange`.
  729.  
  730.  Autoscaling the independent variables (`x` for a plot and `x,y` for a
  731.  3-d surface plot) is taken to mean set the domain to match any data file
  732.  being plotted.  If there are no data files then autoscaling an independent
  733.  variable has no effect (is ignored).  In other words, in the absence
  734.  of a data file, functions alone do not affect the x range (or the y range
  735.  if plotting z = f(x,y)).
  736.  
  737.  See `set xrange`, or `set yrange`.
  738.  
  739.  The behavior of autoscaling remains consistent in parametric mode, however,
  740.  there are more dependent variables and hence more control over X, Y, and
  741.  Z plot scales.  In parametric mode, the independent or dummy variable is 
  742.  `t` for planar plots and `u,v` for surface plots (3-d splots).  Autoscale
  743.  in parametric mode, then, controls all ranges (t,v,y,x,y, and z) and
  744.  allows x, y, and z (for 3-d splots) to be fully autoscaled.
  745.  
  746.  See `set parametric`.
  747.  
  748.  Syntax:
  749.          set autoscale <axes>
  750.          set noautoscale <axes>
  751.          show autoscale
  752.  
  753.  where <axes> is either `x`, `y`, `z` or `xy`.
  754.  If <axes> is not given then all axes are assumed.
  755.  
  756.  Examples:
  757.  
  758.  These set autoscaling of the Y axis.  X axis autoscaling not affected.
  759.          set autoscale y
  760.  
  761.  This sets autoscaling of the X and Y axes.
  762.          set autoscale xy
  763.  
  764.  This sets autoscaling of the X, Y and Z axes.
  765.          set autoscale
  766.  
  767.  This disables autoscaling of the X, Y and Z axes.
  768.          set noautoscale
  769.  
  770.  This disables autoscaling of the Z axis only.
  771.          set noautoscale z
  772. ?autoscale parametric
  773. ?set autoscale t
  774.  When in parametric mode (`set parametric`) the xrange is as
  775.  fully scalable as the yrange.  In other words, in parametric
  776.  mode the X axis can be automatically scaled to fit the range
  777.  of the parametric function that is being plotted.  Of course,
  778.  the Y axis can also be automatically scaled just as in the
  779.  non-parametric case.  If autoscaling on the X axis is not set,
  780.  the current X range is used.
  781.  
  782.  When there is a mix of data files and functions, the xrange of
  783.  the functions is selected as that of the data files if autoscale
  784.  is true for X.  While this keeps the behavior compatible with
  785.  non-parametric plotting, it may not be retained in the future.
  786.  The problem is that, in parametric mode, the x and y ranges are
  787.  not as distinguishable as in the non-parametric mode and this
  788.  behavior may not be the most useful.
  789.  
  790.  For completeness sake a last command `set autoscale t` is accepted.  
  791.  However, the effect of this "scaling" is very minor.  When
  792.  gnuplot determines that the t range would be empty it makes a
  793.  small adjustment if autoscaling is true.  Otherwise, gnuplot
  794.  gives an error.  Such behavior may, in fact, not be very useful
  795.  and the command `set autoscale t` is certainly questionable.  
  796.  
  797.  The 3-d case (a surface plot) extends the above idea similarly.  If
  798.  autoscaling is set then X, Y, and Z ranges are computed and each axis
  799.  scaled to fit the resulting data.
  800. ?set border
  801. ?set noborder
  802. ?show border
  803. ?border
  804. ?noborder
  805.  The 'set border' and 'set noborder' commands controls the display of
  806.  the plot borders for the 2-d plot and 3-d splot commands.
  807.  
  808.  Syntax:
  809.          set border
  810.          set noborder
  811.          show border
  812. ?set clip
  813. ?set noclip
  814. ?show clip
  815. ?clip
  816. ?noclip
  817.  GNUPLOT can clip (actually, not plot at all) data points that fall
  818.  within but too close to the boundaries (this is so the large symbols
  819.  used for points will not extend outside the boundary lines).  To turn
  820.  on clipping, use `set clip points`.  To turn it back off, use `set
  821.  noclip points`. The default is `noclip`.  Without clipping you may have
  822.  points near the boundaries that look bad; try adjusting the x and y ranges.
  823.  
  824.  Syntax:
  825.          set clip points
  826.          set noclip points
  827.  
  828.  GNUPLOT can also clip lines that connect a point that is in range
  829.  with a point that is out of range. The default is to draw the
  830.  in-range portion of such lines (i.e., to "clip" them). With the
  831.  following syntax, the default is `set clip one`. The alternative
  832.  (`set noclip one`) is to not draw any portion of the line segment. In
  833.  no case is a line drawn outside the plotting area.
  834.  
  835.  Syntax:
  836.          set clip one
  837.          set noclip one
  838.  
  839.  GNUPLOT does not show lines that are wholly out of range. Some lines
  840.  may have both endpoints out of range, but pass through the plotting
  841.  area. By default, GNUPLOT does not draw these lines (`set noclip
  842.  two`). They may be drawn (and clipped) with `set clip two`.
  843.  
  844.  Syntax:
  845.          set clip two
  846.          set noclip two
  847.  
  848.  To check the state of all forms of clipping, use
  849.          show clip
  850.  
  851.  The following forms are also permitted. These allow backward
  852.  compatibility with older versions. 
  853.         set clip
  854.         set noclip
  855.  `set clip` is synonymous with `set clip points`. `set noclip` turns
  856.  off all three types of clipping (`points`, `one`, and `two`).
  857. ?set cntrparam
  858. ?show cntrparam
  859. ?cntrparam
  860.  Sets the different parameters for the contouring plot (see also contour).
  861.  
  862.  Syntax:
  863.          set cntrparam { kind { linear | cubicspline | bspline } |
  864.                          points n |
  865.                          levels n |
  866.                          order n }
  867.  
  868.  This command controls the way contours are plotted. The parameters are:
  869.    kind   - Controls type of approximation or interpolation. If linear then
  870.             the contours are drawn as piecewise linear as extracted from the
  871.             surface directly. if cubicspline then piecewise linear contours
  872.             are interpolated to form a somewhat smoother contours, but which
  873.             may undulate. The third option is uniform bspline which only
  874.             approximates the piecewise linear data but is guarantee to be
  875.             smoother.
  876.    points - Eventually all drawings are done with piecewise linear strokes.
  877.             This number controls by how many points a curve will be
  878.             approximated. Relevant for cubicspl and bspline modes only
  879.    levels - Number of contour levels. If the surface is bounded by zmin
  880.             and zmax then contours will be generated from zmin+dz to zmax-dz
  881.             in dz steps, where dz = (zmax - zmin) / (levels + 1)
  882.    order  - Order of the bspline approximation to be used. The bigger this
  883.             order is, more smooth the resulting contour is, while less
  884.             following the original piecewise linear data. This option is
  885.             relevant for bspline mode only.
  886. ?set contour
  887. ?show contour
  888. ?contour
  889.  Enable contour drawing for surfaces. This option is available for splot
  890.  plots only.
  891.  
  892.  Syntax:
  893.          set contour { base | surface | both }
  894.          set nocontour
  895.  
  896.  Issuing 'set contour' will default to base. The three options specifies
  897.  where to draw the contours:
  898.  base - draw the contours on the grid base where the x/ytics are placed.
  899.  surface - draw the contours on the surfaces themselves.
  900.  both - draw the contours on both the above.
  901.  
  902.  See also `set cntrparam` for the parameters in which the contours are drawn.
  903. ?set dummy
  904. ?show dummy
  905. ?dummy
  906.  By default, GNUPLOT assumes that the independent variables for the `plot`
  907.  and `splot` commands are `x` and `y`.  They are called the dummy variables
  908.  because it is just a notation to indicate the independent variables. The
  909.  `set dummy` command changes this default dummy variable names.  For
  910.  example, you may find it more convenient to call the dummy variable
  911.  `t` when plotting time functions:
  912.  
  913.          set dummy t
  914.          plot sin(t), cos(t)
  915.  
  916.  Syntax:
  917.          set dummy <dummy-var>{,<dummy-var>}
  918.          show dummy
  919.  
  920.  Examples:
  921.          set dummy u,v
  922.          set dummy ,s
  923.  
  924.  to set both dummy variables to u and v or set only the second variable to s.
  925. ?set format
  926. ?show format
  927. ?format
  928.  The format of the tic-mark labels can be set with the `set format`
  929.  command.  The default format for both axes is "%g", but other formats
  930.  such as "%.2f" or "%3.0fm" are often desirable.  Anything accepted by
  931.  printf when given a double precision number, and then accepted by the
  932.  terminal, will work.  In particular, the formats f, e, and g will work,
  933.  and the d, o, x, c, s, and u formats will not work.
  934.  
  935.  Syntax:
  936.          set format {<axes>} {"format-string"}
  937.          show format
  938.  
  939.  where <axes> is either `x`, `y`, `xy`, or nothing (which is the same
  940.  as `xy`).  The length of the string representing a ticmark (after 
  941.  formatting with printf) is restricted to 100 characters.
  942.  If the format string is omitted, the format will be returned to 
  943.  the default "%g". For LaTeX users, the format "$%g$" is often desirable.
  944.  If the empty string "" is used, no label will be plotted with each
  945.  tic, though the tic mark will still be plotted. To eliminate all tic
  946.  marks, use `set noxtics` or `set noytics`. 
  947.  
  948.  See also `set xtics` and `set ytics` for more control over tic labels.
  949. ?show functions
  950.  The `show functions` command lists all user-defined functions and
  951.  their definitions. 
  952.  
  953.  Syntax:
  954.          show functions
  955. ?set grid
  956. ?show grid
  957. ?grid
  958.  The optional `set grid` draws a grid at the tic marks with the axis
  959.  linetype.
  960.  
  961.  Syntax:
  962.          set grid
  963.          set nogrid
  964.          show grid
  965. ?set isosamples
  966. ?show isosamples
  967. ?isosamples
  968.  The isolines density of surfaces may be changed by the `set isosamples`
  969.  command.  By default, sampling is set to 10 isolines per axis.  A higher
  970.  sampling rate will produce more accurate plots, but will take
  971.  longer.  When plotting datafiles, the isoline sampling rate must be set
  972.  to be equal to the second dimension of the grid data points.
  973.  
  974.  Syntax:
  975.          set isosamples <expression>
  976.          show isosamples
  977. ?set key
  978. ?show key
  979. ?key
  980.  The `set key` enables a key describing curves on a plot.
  981.  By default the key is placed in the upper right corner of
  982.  the plot.
  983.  
  984.  Syntax:
  985.          set key
  986.          set key x,y
  987.          set nokey
  988.          show key
  989.  
  990.  The coordinates x,y specify the location of the key on the plot.
  991.  The key is drawn as a sequence of lines, with one plot described
  992.  on each line.  On the right hand side of each line is a
  993.  representation that attempts to mimic the way the curve is plotted.
  994.  On the left side of each line is the text description,
  995.  obtained from the `plot` command.  The lines are vertically
  996.  arranged so an imaginary straight line divides the left- and
  997.  right-hand sides of the key.  It is the x-coordinate of this
  998.  line that you specify with the optional x in the `set key`
  999.  command; the y in the `set key` command is top of the key.
  1000.  Some or all of the key may be outside of the plot boundary, if you
  1001.  wish, although this may interfere with other labels and may cause an
  1002.  error on some devices.
  1003.  
  1004.  Examples:
  1005.  
  1006.  This places the key at the default location:
  1007.          set key
  1008.  This disables the key.
  1009.          set nokey
  1010.  This places a key at coordinates 2,3.5
  1011.          set key 2,3.5
  1012. ?set label
  1013. ?set nolabel
  1014. ?show label
  1015. ?label
  1016. ?nolabel
  1017.  Arbitrary labels can be placed on the plot using the `set label` command.
  1018.  Set label can be used on either a 3-d surface plot or a normal 2-d plot.
  1019.  If the `z` coordinate is given on a 2-d plot it is ignored; if it is 
  1020.  missing on a 3-d surface plot it is assumed to be 0.
  1021.  
  1022.  Syntax:
  1023.  
  1024.           set label {tag} {"label_text"} {at x,y{,z}} {<justification>}
  1025.           set nolabel {tag}
  1026.           show label
  1027.  
  1028.  
  1029.  Curly braces {} denote optional items.
  1030.  The text defaults to "", and the position x,y,z to 0,0,0.
  1031.  The x, y and z values are in the graph's coordinate system (z is ignored
  1032.  for 2-d plots). The tag is an integer that is used to identify the
  1033.  label. If no tag is given, the lowest unused tag value is assigned
  1034.  automatically. The tag can be used to delete or change a specific
  1035.  label. To change any attribute of an existing label, use the `set
  1036.  label` command with the appropriate tag, and specify the parts of the
  1037.  label to be changed.
  1038.  
  1039.  By default, the text is placed flush left against point x,y. If you
  1040.  want to adjust the way the label is positioned with respect to the
  1041.  point x,y, add the parameter <justification>, which may be `left`,
  1042.  `right` or `center`, indicating that the point is to be at the left,
  1043.  right or center of the text.  The <justification> may be abbreviated.
  1044.  Labels outside the plotted boundaries are permitted but may interfere
  1045.  with axes labels or other text; use at your own risk.
  1046.  
  1047.  Examples:
  1048.  
  1049.  To set a label at (1,2) to "y=x" use:
  1050.           set label "y=x" at 1,2
  1051.  To set a label "y=x^2" with the right of the text at (2,3,4), and tag
  1052.  the label number 3, use:
  1053.           set label 3 "y=x^2" at 2,3,4 right
  1054.  To change the preceding label to center justification, use:
  1055.           set label 3 center
  1056.  To delete label number 2 use:
  1057.           set nolabel 2
  1058.  To delete all labels use:
  1059.           set nolabel
  1060.  To show all labels (in tag order) use:
  1061.           show label
  1062.  
  1063.  The Imagen driver allows \\ in a string to specify a newline.
  1064. ?set logscale
  1065. ?set nologscale
  1066. ?show logscale
  1067. ?logscale
  1068. ?nologscale
  1069.  Log scaling may be set on the X, Y and/or Z axis.
  1070.  
  1071.  Syntax:
  1072.          set logscale <axes>
  1073.          set nologscale <axes>
  1074.          show logscale
  1075.  
  1076.  Where <axes> is either `x`, `y`, `z` or `xy`.
  1077.  If <axes> is not given then both axes are assumed.
  1078.  The command `set logscale` turns on log scaling on the specified
  1079.  axes, while `set nologscale` turns off log scaling.
  1080. ?set offsets
  1081. ?show offsets
  1082. ?offsets
  1083.  The amount of the graph that the plot takes up may be controlled
  1084.  to some extent with the `set offsets` command.  This command takes
  1085.  four offset arguments -- <left>, <right>, <top> and <bottom>.  
  1086.  By default, each offset is 0.  Each offest may be a constant or
  1087.  an expression.  Left and right offsets are given in units of 
  1088.  the x axis, while top and bottom offsets are given in units of 
  1089.  the y axis.  The plot of sin(x), displayed with offsets of 
  1090.  0, 0, 2, 2 will take up  1/3 of the displayed y axis.  
  1091.  Offsets are particularly useful with polar coordinates as a means
  1092.  of compensating for aspect ratio distortion.
  1093.  
  1094.  Syntax:
  1095.          set offsets <left>, <right>, <top>, <bottom>
  1096.          show offsets
  1097. ?set output
  1098. ?show output
  1099. ?output
  1100.  By default, plots are displayed to the standard output.  The
  1101.  `set output` command redirects the display to the specified file or
  1102.  device. 
  1103.  
  1104.  Syntax:
  1105.          set output {<filename>}
  1106.          show output
  1107.  
  1108.  The filename must be enclosed in quotes.  If the filename is
  1109.  omitted, output will be sent to the standard output.
  1110. ?set parametric
  1111. ?show parametric
  1112. ?parametric
  1113.  The `set parametric` command changes the meaning of the plot from
  1114.  normal functions to parametric functions.  The command
  1115.  `set noparametric` changes the plotting style back to normal,
  1116.  single-valued expression plotting.
  1117.  
  1118.  In 2-d plotting, a parametric function is determined by a pair
  1119.  of parametric functions operating on a `parameter`.  An example
  1120.  of a 2-d parametric function would be 
  1121.  
  1122.  For 3-d plotting, the surface is described as x=f(u,v), y=g(u,v),
  1123.  z=h(u,v) and hence a triplet of functions are required.  An example
  1124.  of 3-d parametric function would be
  1125.  cos(u)*cos(v),cos(u)*sin(v),sin(u) (which defines a sphere).
  1126.  Hence it takes two or three parametric function specifications in
  1127.  terms of the parametric dummy argument to describe a single graph.
  1128.  
  1129.  The total set of possible plots is a superset of the simple f(x)
  1130.  style plots, since the two (three) functions can describe both the
  1131.  x and y (and z) values to be computed separately.  In fact, plots of
  1132.  the type t,f(t) (u,v,f(u,v)) are equivalent to those produced with
  1133.  f(x) when the x values are computed using identity function as the
  1134.  first function.
  1135.  
  1136.  Note that the order the parametric function is specified is xfunction,
  1137.  yfunction (and zfunction) and that each operates over the common
  1138.  parametric domain.
  1139.  
  1140.  Also, the `set parametric` function implies a new range of values.
  1141.  Whereas the normal f(x) and f(x,y) style plotting assume an xrange
  1142.  yrange (and zrange), the parametric mode additionally specifies a trange
  1143.  urange and vrange.  These ranges may be specified specified directly with 
  1144.  `set trange`, `set urange` and `set vrange` or by specifying the range on 
  1145.  the plot and/or splot commands.  Currently the default range for these 
  1146.  parametric variables is [-5:5].  It is expected you'll want to set them 
  1147.  to something more meaningful.
  1148. ?set polar
  1149. ?show polar
  1150. ?polar
  1151.  The `set polar` command changes the meaning of the plot from
  1152.  rectangular coordinates to polar coordinates.  In polar
  1153.  coordinates, the dummy variable (x) is an angle.  The range
  1154.  of this angle is changed from whatever it was to [0:2*pi].
  1155.  
  1156.  The command `set nopolar` changes the meaning of the plot back
  1157.  to the default rectangular coordinate system.  The range of
  1158.  x is changed from whatever it was to [-10:10].
  1159.  
  1160.  While in polar coordinates the meaning of an expression in x
  1161.  is really r = f(x), where x is an angle of rotation. The xrange
  1162.  controls the domain (the angle) of the function, and the yrange
  1163.  controls the range (the radius). The plot is plotted on a rectangular
  1164.  grid, and the `x` and `y` axes are both in units of the radius. Thus,
  1165.  the yrange controls both dimensions of the plot output. There is no
  1166.  way to specify the output dimensions separately.
  1167.  
  1168.  Syntax:
  1169.          set polar
  1170.          set nopolar
  1171.          show polar
  1172.  Example:
  1173.          set polar
  1174.          plot x*sin(x)
  1175.          plot [-2*pi:2*pi] [-3:3] x*sin(x)
  1176.  The first plot uses the default polar angular domain of 0 to 2*pi.
  1177.  The radius (and the size of the plot) is scaled automatically. The
  1178.  second plot expands the domain, and restricts the range of the radius
  1179.  (and the size of the plot) to [-3:3].
  1180. ?set samples
  1181. ?show samples
  1182. ?samples
  1183.  The sampling rate of functions may be changed by the `set samples`
  1184.  command.  By default, sampling is set to 160 points.  A higher
  1185.  sampling rate will produce more accurate plots, but will take
  1186.  longer.  When plotting datafiles, the sampling rate must be set
  1187.  higher than the number of data points (exactly equal to first dimension
  1188.  of grid data points for splot).
  1189.  
  1190.  Syntax:
  1191.          set samples <expression>
  1192.          show samples
  1193. ?set size
  1194. ?show size
  1195. ?size
  1196.  The `set size` command scales the displayed size of the plot.
  1197.  On some terminals, changing the size of the plot will result in
  1198.  text being misplaced.  Increasing the size of the plot may
  1199.  produce strange results.  Decreasing is safer.
  1200.  
  1201.  Syntax:
  1202.  
  1203.          set size {x,y}
  1204.          show size
  1205.  
  1206.  The x and y values are the scaling factors for the size.
  1207.  The defaults (1,1) are selected if the scaling factors are omitted.
  1208.  
  1209.  Examples: 
  1210.  
  1211.  To set the size to normal size use:
  1212.          set size
  1213.  To make the plot half size use:
  1214.          set size 0.5,0.5
  1215.  To show the size use:
  1216.          show size
  1217.  
  1218.  For the LaTeX and Fig terminals the default size (scale factor 1,1)
  1219.  is 5 inches wide by 3 inches high. Note that the size of the plot
  1220.  includes the space used by the labels; the plotting area itself is
  1221.  smaller. 
  1222. ?set style
  1223. ?show style
  1224. ?style
  1225.  Plots may be displayed in one of five styles: `lines`, `points`,
  1226.  `linespoints`, `impulses`, or `dots`.  The `lines` style connects
  1227.  adjacent points with lines. The `points` style displays a small
  1228.  symbol at each point.  The `linespoints` style does both `lines` and
  1229.  `points`. The `impulses` style displays a vertical line from the X
  1230.  axis to each point. The `dots` style plots a tiny dot at each data
  1231.  point; this is useful for scatter plots with many points.
  1232.  
  1233.  Default styles are chosen with the `set function style` and `set
  1234.  data style` commands.  See `plot style` for information about how
  1235.  to override the default plotting style for individual functions.
  1236.  
  1237.  Syntax:
  1238.          set function style <style>
  1239.          set data style <style>
  1240.          show function style
  1241.          show data style
  1242.  
  1243.  Where <style> is either `lines`, `points`, `linespoints`, `impulses`,
  1244.  or `dots`.
  1245. ?set surface
  1246. ?set nosurface
  1247. ?show surface
  1248. ?surface
  1249.  Controls the display of surfaces. Useful if contours are to be displayed
  1250.  by themselves. See also 'set contour'.
  1251.  
  1252.  Syntax:
  1253.          set surface
  1254.          set nosurface
  1255.          show surface
  1256. ?set terminal
  1257. ?show terminal
  1258. ?terminal
  1259.  GNUPLOT supports many different graphics devices.  Use the `set
  1260.  terminal` command to select the type of device for which GNUPLOT
  1261.  will produce output. 
  1262.  
  1263.  Syntax:
  1264.          set terminal {<terminal-type>}
  1265.          show terminal
  1266.  
  1267.  If <terminal-type> is omitted, GNUPLOT will list the available
  1268.  terminal types.  <terminal-type> may be abbreviated. 
  1269.  
  1270.  Use `set output` to redirect this output to a file or device.
  1271. ?set tics
  1272. ?show tics
  1273. ?tics
  1274.  By default, tics are drawn inwards from the border on all four sides.
  1275.  The `set tics` command can be used to change the tics to be 
  1276.  drawn outwards on the left and bottom borders only.  
  1277.  This is useful when doing impulse plots.
  1278.  
  1279.  Syntax:
  1280.          set tics {<direction>}
  1281.          show tics
  1282.  
  1283.  Where <direction> may be `in`, `out` or nothing (which is the same as in).
  1284.  
  1285.  See also the `set xtics` `set ytics` and `set ztics` command for more
  1286.  control of tic marks.
  1287. ?set title
  1288. ?show title
  1289. ?title
  1290.  The `set title` command produces a plot title which will be centered
  1291.  at the top of the plot.  Using the optional x/y screen offsets, the
  1292.  title can be arbitrarily placed anywhere on the plot.  `set title`
  1293.  with no parameters clears the title.
  1294.  
  1295.  Syntax:
  1296.           set title {"title-text"} {x}{,y}
  1297.           show title
  1298.  
  1299.  Specifing x or y as optional offsets for the title will move the title
  1300.  x or y character screen coordinates.  All parameters are optional; for 
  1301.  example:
  1302.  
  1303.  set title ,-1
  1304.  
  1305.  will change only the y offset of the title.
  1306.  
  1307.  (The Latex, EEPIC, and Imagen drivers allow \\ in a string to specify
  1308.  a newline.)
  1309. ?set trange
  1310. ?show trange
  1311. ?trange
  1312.  The `set trange` command sets the parametric range used to compute
  1313.  x and y values when in parametric mode.  If not in parametric mode
  1314.  (see `set parametric`) then this range is not used.  This command
  1315.  does not affect XY autoscaling or XY ranges.
  1316.  
  1317.  This range may also be specified on the `plot` command line when
  1318.  in parametric mode.
  1319.  
  1320.  Syntax:
  1321.          set trange [{<tmin> : <tmax>}]
  1322.  
  1323.  Where <tmin> and <tmax> terms are expressions or constants.
  1324.  
  1325.  Both the <tmin> and <tmax> terms are optional. Anything omitted will
  1326.  not be changed, so 
  1327.          set trange [:10]
  1328.  changes tmax to 10 without affecting tmin.
  1329. ?set view
  1330. ?show view
  1331. ?view
  1332.  The `set view` command sets the view for 3-d splots. It controls
  1333.  both rotation and scaling of the display and support only orthographic
  1334.  projection.
  1335.  
  1336.  Syntax:
  1337.          set view rot_x {,{rot_z}{,{scale}{,scale_z}}}
  1338.          show view
  1339.  
  1340.  Where rot_x and rot_z controls the rotation angles (in degrees) along the
  1341.  screen x and z (perpendicular to screen) axes. The rot_x variable is
  1342.  bounded to the [0:180] range with default being 60 degree while rot_z
  1343.  variable is bounded to [0:360] range and default of 30 degrees.
  1344.  scale controls scaling of the entire splot while scale_z will scale the
  1345.  z axis only and both default to 1.0.
  1346.  
  1347.  Examples:
  1348.          set view 60, 30, 1, 1
  1349.          set view ,,0.5
  1350.  
  1351.  Will set all the four default values in the first example and change
  1352.  only scale to a half in the second example.
  1353. ?show variables
  1354.  The `show variables` command lists all user-defined variables and
  1355.  their values. 
  1356.  
  1357.  Syntax:
  1358.          show variables
  1359. ?set xlabel
  1360. ?show xlabel
  1361. ?xlabel
  1362.  The `set xlabel` command sets the x-axis label, which will be centered
  1363.  along the plot x axis.  Using the optional x/y screen offsets, the
  1364.  label can be arbitrarily placed anywhere on the plot.  `set xlabel`
  1365.  with no parameters clears the label.
  1366.  
  1367.  Syntax: 
  1368.           set xlabel {"label"} {x}{,y}
  1369.           show xlabel
  1370.  
  1371.  Specifing x or y as optional offsets for the label will move the label
  1372.  x or y character screen coordinates.  All parameters are optional; for 
  1373.  example:
  1374.  
  1375.  set xlabel -1
  1376.  
  1377.  will change only the x offset of the xlabel.
  1378.  
  1379.  (The Latex, EEPIC, and Imagen drivers allow \\ in a string to specify
  1380.  a newline.)
  1381. ?set xrange
  1382. ?show xrange
  1383. ?xrange
  1384.  The `set xrange` command sets the horizontal range which will be
  1385.  displayed.  This command turns X axis autoscaling OFF.
  1386.  
  1387.  This range may also be specified on the `plot` command line.
  1388.  
  1389.  Syntax:
  1390.          set xrange [{<xmin> : <xmax>}]
  1391.  
  1392.  Where <xmin> and <xmax> terms are expressions or constants.
  1393.  
  1394.  Both the <xmin> and <xmax> terms are optional. Anything omitted will
  1395.  not be changed, so 
  1396.          set xrange [:10]
  1397.  changes xmax to 10 without affecting xmin. 
  1398. ?set xtics
  1399. ?set noxtics
  1400. ?show xtics
  1401. ?xtics
  1402. ?noxtics
  1403.  Very fine control of the `x` axes tic marks is possible with the `set
  1404.  xtics` and `set noxtics` command. The x-axis tic marks may be turned
  1405.  off with the `set noxtics` command. They may be turned on (the
  1406.  default state) with `set xtics`.
  1407.  
  1408.  If you prefer your own series of tic marks, you may use the form
  1409.           set xtics <start>, <incr>{, <end>}
  1410.  The curly braces indicate that the <end> parameter is optional. 
  1411.  This command specifies that a series of tics will be plotted on the
  1412.  `x` axis between the `x` values <start> and <end> with an increment
  1413.  of <incr>. If <end> is not given it is assumed to be infinity. The
  1414.  increment may be negative. Example:
  1415.            set xtics 0,.5,10
  1416.  makes tics 0, 0.5, 1, 1.5, ..., 9.5, 10.
  1417.  
  1418.  If you need arbitrary tic positions, or non-numeric tic labels, 
  1419.  any non-empty set of tic positions and labels may be given with this
  1420.  format:
  1421.           set xtics ({"label"} pos {, {"label"} pos}...)
  1422.  Again curly braces contain optional components. Thus, a set of tics
  1423.  are a set of positions, each with its own optional label. Note that
  1424.  the label is a string enclosed by quotes, and may be a constant
  1425.  string, such as "hello", or contain formatting information for the tic
  1426.  number (which is the same as the position), such as "%3f clients".
  1427.  See `set format` for more information about this case. The label may 
  1428.  even be empty. Examples:
  1429.           set xtics ("low" 0, "medium" 50, "high" 100)
  1430.           set xtics (1,2,4,8,16,32,64,128,256,512,1024)
  1431.           set xtics ("bottom" 0, "" 10, "top" 20)
  1432.  
  1433.  Tics will only be plotted when in range.
  1434.  
  1435.  The `set ytics` and `set noytics` commands work identically.
  1436.  See also `set format` command.
  1437. ?set xzeroaxis
  1438. ?show xzeroaxis
  1439. ?xzeroaxis
  1440.  `set xzeroaxis` draws the x-axis.  By default, this option is on.
  1441.  `set noxzeroaxis` causes gnuplot to omit the x-axis.
  1442.  
  1443.  Syntax:
  1444.          set xzeroaxis
  1445.          set noxzeroaxis
  1446.          show xzeroaxis
  1447. ?set yzeroaxis
  1448. ?show yzeroaxis
  1449. ?yzeroaxis
  1450.  `set yzeroaxis` draws the y-axis.  By default, this option is on.
  1451.  `set noyzeroaxis` causes gnuplot to omit the y-axis.
  1452.  
  1453.  Syntax:
  1454.          set yzeroaxis
  1455.          set noyzeroaxis
  1456.          show yzeroaxis
  1457. ?set ylabel
  1458. ?show ylabel
  1459. ?ylabel
  1460.  The `set ylabel` command sets the y-axis label.
  1461.  The position of this label depends on the terminal, and can be
  1462.  one of the following three positions.
  1463.  
  1464.  1. Horizontal text flushed left at the top left of the plot.  
  1465.  Terminals that cannot rotate text will probably use this method.
  1466.  
  1467.  2. Vertical text centered vertically at the left of the plot.
  1468.  Terminals that can rotate text will probably use this method.
  1469.  
  1470.  3. Horizontal text centered vertically at the left of the plot.
  1471.  The Latex and EEPIC drivers use this method.  The user must insert 
  1472.  line breaks using \\ to prevent the ylabel from overwriting
  1473.  the plot.  To produce a vertical row of characters, add \\
  1474.  between every printing character.
  1475.  
  1476.  Syntax:  
  1477.           set ylabel {"label"} {x}{,y}
  1478.           show ylabel
  1479.  
  1480.  With no parameters, the label is cleared.  
  1481.  Specifing x or y as optional offsets for the label will move the label
  1482.  x or y character screen coordinates.  All parameters are optional; for 
  1483.  example:
  1484.  
  1485.  set ylabel "ylabel" ,-1
  1486.  
  1487.  will change only the label and the y offset of the ylabel.
  1488.  
  1489.  (The Latex, EEPIC, and Imagen drivers allow \\ in a string to specify
  1490.  a newline.)
  1491. ?set yrange
  1492. ?show yrange
  1493. ?yrange
  1494.  The `set yrange` command sets the vertical range which will be
  1495.  displayed.  This command turns Y axis autoscaling OFF. 
  1496.  
  1497.  This range may also be specified on the `plot` command line.
  1498.  
  1499.  Syntax:
  1500.          set yrange [{<ymin> : <ymax>}]
  1501.  
  1502.  Where <ymin> and <ymax> terms are expressions or constants.
  1503.  
  1504.  Both the <ymin> and <ymax> terms are optional. Anything omitted will
  1505.  not be changed, so 
  1506.          set yrange [:10]
  1507.  changes ymax to 10 without affecting ymin. 
  1508. ?set ytics
  1509. ?set noytics
  1510. ?show ytics
  1511. ?ytics
  1512. ?noytics
  1513.  The `set ytics` and `set noytics` commands are similar to the `set xtics`
  1514.  and `set noxtics` commands. Please see `set xtics`.
  1515. ?set zlabel
  1516. ?show zlabel
  1517. ?zlabel
  1518.  The `set zlabel` command sets the z-axis label, which will be centered
  1519.  along the plot z axis.  Using the optional x/y screen offsets, the
  1520.  label can be arbitrarily placed anywhere on the plot.  `set zlabel`
  1521.  with no parameters clears the label.
  1522.  
  1523.  Syntax: 
  1524.           set zlabel {"label"} {x}{,y}
  1525.           show zlabel
  1526.  
  1527.  Specifing x or y as optional offsets for the label will move the label
  1528.  x or y character screen coordinates.  All parameters are optional; for 
  1529.  example:
  1530.  
  1531.  set zlabel ,1
  1532.  
  1533.  will change only the y offset of the zlabel.
  1534.  
  1535.  (The Latex, EEPIC, and Imagen drivers allow \\ in a string to specify
  1536.  a newline.)
  1537. ?set zrange
  1538. ?show zrange
  1539. ?zrange
  1540.  The `set zrange` command sets the vertical range which will be
  1541.  displayed.  This command turns Z axis autoscaling OFF.
  1542.  
  1543.  This range may also be specified on the `splot` command line.
  1544.  
  1545.  Syntax:
  1546.          set zrange [{<zmin> : <zmax>}]
  1547.  
  1548.  Where <zmin> and <zmax> terms are expressions or constants.
  1549.  
  1550.  Both the <zmin> and <zmax> terms are optional. Anything omitted will
  1551.  not be changed, so
  1552.          set zrange [2:]
  1553.  changes zmin to 2 without affecting zmax.
  1554. ?set zero
  1555. ?show zero
  1556. ?zero
  1557.  GNUPLOT will not plot a point if its imaginary part is greater in
  1558.  magnitude than the `zero` threshold.  The default `zero` value is
  1559.  1e-8. This can be changed with the `set zero` command.
  1560.  
  1561.  Syntax:
  1562.          set zero <expression>
  1563.          show zero
  1564. ?set zeroaxis
  1565. ?show zeroaxis
  1566. ?zeroaxis
  1567.  `set zeroaxis` draws the x-axis and y-axis.  By default, this option is on.
  1568.  `set noxzeroaxis` causes gnuplot to omit the axes.
  1569.  
  1570.  Syntax:
  1571.          set zeroaxis
  1572.          set nozeroaxis
  1573.          show zeroaxis
  1574.  See `set xzeroaxis` and `set yzeroaxis`.
  1575. ?shell
  1576.  The `shell` command spawns an interactive shell.  To return to
  1577.  GNUPLOT, type `logout` if using VMS, `exit` or your END-OF-FILE
  1578.  character if using Unix, or `exit` if using MS-DOS. 
  1579.  
  1580.  A single shell command may be spawned by preceding it with the !
  1581.  character ($ if using VMS) at the beginning of a command line.
  1582.  Control will return immediately to GNUPLOT after this command is
  1583.  executed.  For example,
  1584.  
  1585.       ! dir
  1586.  
  1587.  prints a directory listing and then returns to GNUPLOT.
  1588. ?startup
  1589. ?start
  1590. ?.gnuplot
  1591.  When GNUPLOT is run, it looks for an initialization file to load. 
  1592.  This file is called `.gnuplot` on Unix systems, and `GNUPLOT.INI` on
  1593.  other systems.  If this file is not found in the current directory,
  1594.  the program will look for it in your home directory (under MS-DOS, the
  1595.  environment variable GNUPLOT should contain the name of this
  1596.  directory).
  1597.  
  1598.  If this file is found, GNUPLOT executes the commands in this file.
  1599.  This is most useful for setting your terminal type and defining any
  1600.  functions or variables which you use often.  The variable `pi` is
  1601.  already defined for you.
  1602. ?substitution
  1603.  Command-line substitution is specified by a system command enclosed in
  1604.  backquotes.  This command is spawned and the output it produces
  1605.  replaces the name of the command (and backquotes) on the command line.
  1606.  
  1607.  Newlines in the output produced by the spawned command are replaced with
  1608.  blanks.
  1609.  
  1610.  Command-line substitution can be used anywhere on the GNUPLOT command
  1611.  line. 
  1612.  
  1613.  
  1614.  Example:
  1615.  
  1616.  This will run the program `leastsq` and substitute `leastsq`
  1617.  (including quotes) on the command line with its output:
  1618.  
  1619.   f(x) = `leastsq`
  1620.  
  1621.  or, in VMS
  1622.  
  1623.   f(x) = `run leastsq`
  1624. ?userdefined
  1625. ?variables
  1626.  You may define your own functions and variables.  User-defined
  1627.  functions and variables may be used anywhere. 
  1628.  
  1629.  User-defined function syntax:
  1630.      <function-name> ( <dummy-var> ) =  <expression>
  1631.  
  1632.  Where <expression> is defined in terms of <dummy-var>.
  1633.  
  1634.  User-defined variable syntax:
  1635.      <variable-name> = <constant-expression>
  1636.  
  1637.  Examples:
  1638.      w = 2
  1639.      q = floor(tan(pi/2 - 0.1))
  1640.      f(x) = sin(w*x)
  1641.      sinc(x) = sin(pi*x)/(pi*x)
  1642.      delta(t) = (t == 0)
  1643.      ramp(t) = (t > 0) ? t : 0
  1644.  
  1645.  The variable `pi` is already defined for you.
  1646.  
  1647.  See `show functions` and `show variables`.
  1648. ?bugs
  1649.  The atan() function does not work correctly for complex arguments.
  1650.  
  1651.  The bessel functions do not work for complex arguments.
  1652.  
  1653.  The most important known bug is actually in the stdio library for the
  1654.  Sun4 operating system (SunOS Sys4-3.2). The "%g" format for `printf`
  1655.  sometimes incorrectly prints numbers (e.g., 200000.0 as "2").  Thus,
  1656.  tic mark labels may be incorrect on a Sun4 version of gnuplot.  You
  1657.  may work around it by rescaling your data or by using the `set format`
  1658.  command to change the tic mark format to "%7.0f" or some other
  1659.  appropriate format. This appears to have been fixed in SunOS 4.0.
  1660.  
  1661.  Another bug: On a Sun3 under SunOS 4.0, and on Sun4's under Sys4-3.2
  1662.  and SunOS 4.0, the `sscanf` routine incorrectly parses "00 12" with
  1663.  the format "%f %f" and reads 0 and 0 instead of 0 and 12.  This
  1664.  affects data input. If your data file contains X coordinates that are
  1665.  zero but are specified like '00', '000', etc, then you will read the
  1666.  wrong Y values. Check your data files or do not use a Sun4 until they
  1667.  fix the bug. It does NOT appear that this has been fixed in SunOS 4.0.
  1668.  
  1669.  Microsoft C 5.1 has a nasty bug associated with the %g format for
  1670.  printf.  When any of the formats "%.2g", "%.1g", "%.0g", "%.g" are
  1671.  used, printf will incorrectly print numbers in the range 1e-4 to 1e-1.  
  1672.  Numbers that should be printed in the %e format are incorrectly 
  1673.  printed in the %f format, with the wrong number of zeros after the 
  1674.  decimal point.
  1675.  To work around this problem, use the %e or %f formats explicitly.
  1676.  
  1677.  Gnuplot when compiled with Microsoft C did not work correctly on two
  1678.  VGA displays that were tested.  The CGA, EGA and VGA drivers should 
  1679.  probably be rewritten to use the Microsoft C graphics library.
  1680.  Gnuplot compiled with Turbo C uses the Turbo C graphics drivers and 
  1681.  does work correctly with VGA displays. 
  1682.  
  1683.  VAX/VMS 4.7 C compiler release 2.4 also has a poorly implemented %g 
  1684.  format for printf.  The numbers are printed numerically correct, but 
  1685.  may not be in the requested format.  The K&R second edition says that 
  1686.  for the %g format, %e is used if the exponent is less than -4 or greater 
  1687.  than or equal to the precision.  The VAX uses %e format if the exponent 
  1688.  is less than -1.  The VAX appears to take no notice of the precision 
  1689.  when deciding whether to use %e or %f for numbers less than 1.
  1690.  To work around this problem, use the %e or %f formats explicitly.
  1691.  From the VAX C 2.4 release notes:
  1692.  e,E,f,F,g,G  Result will always contain  a  decimal  point.
  1693.  For g and G, trailing zeros will not be removed from the result.
  1694.  
  1695.  VAX/VMS 5.2 C compiler release 3.0 has a slightly better implemented
  1696.  %g format than release 2.4, but not much.  Trailing decimal points are 
  1697.  now removed, but trailing zeros are still not removed from %g numbers 
  1698.  in exponential format.
  1699.  
  1700.  Please report any bugs you find to pixar!bug-gnuplot@sun.com or
  1701.  pixar!bug-gnuplot@ucbvax.berkeley.edu.
  1702.