home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Graphics / Plotting / aa_Intel_Only / Gnuplot / Unused / docs / gnuplot.doc < prev    next >
Encoding:
Text File  |  1995-06-12  |  126.0 KB  |  3,613 lines

  1. 1 gnuplot
  2. ?
  3.  GNUPLOT is a command-driven interactive function plotting program.
  4.  
  5.  For help on any topic, type `help` followed by the name of the topic.
  6.  
  7.  The new GNUPLOT user should begin by reading the `introduction` topic
  8.  (type `help introduction`) and about the `plot` command (type `help plot`).
  9.  Additional help can be obtained from the USENET newsgroup
  10.  comp.graphics.gnuplot.
  11.  
  12. 2 copyright
  13. ?copyright
  14.       Copyright (C) 1986 - 1993   Thomas Williams, Colin Kelley
  15.  
  16.    Permission to use, copy, and distribute this software and its
  17.    documentation for any purpose with or without fee is hereby granted,
  18.    provided that the above copyright notice appear in all copies and
  19.    that both that copyright notice and this permission notice appear
  20.    in supporting documentation.
  21.  
  22.    Permission to modify the software is granted, but not the right to
  23.    distribute the modified code.  Modifications are to be distributed
  24.    as patches to released version.
  25.  
  26.    This software is provided "as is" without express or implied warranty.
  27.  
  28.  
  29.    AUTHORS
  30.  
  31.      Original Software:
  32.        Thomas Williams,  Colin Kelley.
  33.  
  34.      Gnuplot 2.0 additions:
  35.          Russell Lang, Dave Kotz, John Campbell.
  36.  
  37.      Gnuplot 3.0 additions:
  38.          Gershon Elber and many others.
  39.  
  40.    Send your comments or suggestions to
  41.     info-gnuplot@dartmouth.edu.
  42.    This is a mailing list; to join it send a note to
  43.     info-gnuplot-request@dartmouth.edu.
  44.    Send bug reports to
  45.     bug-gnuplot@dartmouth.edu.
  46.  
  47.  
  48. 2 introduction
  49. ?introduction
  50.  GNUPLOT is a command-driven interactive function plotting program.
  51.  It is case sensitive (commands and function names written in lowercase
  52.  are not the same as those written in CAPS). All command names may be
  53.  abbreviated, as long as the abbreviation is not ambiguous. Any number
  54.  of commands may appear on a line, separated by semicolons (;).
  55.  Strings are indicated with quotes.  They may be either single or double
  56.  quotation marks, e.g.,
  57.  
  58.           load "filename"
  59.           cd 'dir'
  60.  
  61.  Any command-line arguments are assumed to be names of files containing
  62.  GNUPLOT commands, with the exception of standard X11 arguments, which
  63.  are processed first. Each file is loaded with the `load` command, in the
  64.  order specified. GNUPLOT exits after the last file is processed.  When
  65.  no load files are named, gnuplot enters into an interactive mode.
  66.  
  67.  Commands may extend over several input lines, by ending each
  68.  line but the last with a backslash (\). The backslash must be the LAST
  69.  character on each line. The effect is as if the backslash and newline
  70.  were not there. That is, no white space is implied, nor is a comment
  71.  terminated. Therefore, commenting out a continued line comments out
  72.  the entire command (see `comment`).
  73.  
  74.  In this documentation, curly braces ({}) denote optional arguments to
  75.  many commands, and a vertical bar (|) separates mutually exclusive
  76.  choices.  GNUPLOT keywords or help topics are indicated by backquotes
  77.  or `boldface` (where available).  Angle brackets (<>) are used to mark
  78.  replaceable tokens.
  79.  
  80.  For help on any topic, type `help` followed by the name of the topic.
  81.  
  82.  The new GNUPLOT user should begin by reading about the `plot`
  83.  command (type `help plot`).
  84. 2 cd
  85. ?cd
  86.  The `cd` command changes the working directory.
  87.  
  88.  Syntax:
  89.          cd "<directory-name>"
  90.  
  91.  The directory name must be enclosed in quotes.
  92.  
  93.  Examples:
  94.          cd 'subdir'
  95.          cd ".."
  96. 2 clear
  97. ?clear
  98.  The `clear` command erases the current screen or output device as
  99.  specified by `set output`. This usually generates a formfeed on
  100.  hardcopy devices. Use `set terminal` to set the device type.
  101. 2 command line-editing
  102. ?line-editing
  103. ?editing
  104. ?history
  105. ?command line-editing
  106.  The Unix, Atari, VMS, MS-DOS and OS/2 versions of GNUPLOT support command
  107.  line-editing.  Also, a history mechanism allows previous commands to be
  108.  edited, and re-executed. After the command line has been edited, a newline
  109.  or carriage return will enter the entire line regardless of where the
  110.  cursor is positioned.
  111.  
  112.  The editing commands are as follows:
  113.  
  114. @start table - first is interactive cleartext form
  115.   `Line-editing`:
  116.  
  117.   ^B moves back a single character.
  118.   ^F moves forward a single character.
  119.   ^A moves to the beginning of the line.
  120.   ^E moves to the end of the line.
  121.   ^H and DEL delete the previous character.
  122.   ^D deletes the current character.
  123.   ^K deletes from current position to the end of line.
  124.   ^L,^R redraws line in case it gets trashed.
  125.   ^U deletes the entire line.
  126.   ^W deletes the last word.
  127.  
  128.   `History`:
  129.  
  130.   ^P moves back through history.
  131.   ^N moves forward through history.
  132. #Character && Function \\ \hline
  133. #\multicolumn{3}{|c|}{Line Editing}\\
  134. #\verb~^B~ && move back a single character.\\
  135. #\verb~^F~ && move forward a single character.\\
  136. #\verb~^A~ && move to the beginning of the line.\\
  137. #\verb~^E~ && move to the end of the line.\\
  138. #\verb~^H, DEL~ && delete the previous character.\\
  139. #\verb~^D~ && delete the current character.\\
  140. #\verb~^K~ && delete from current position to the end of line.\\
  141. #\verb~^L, ^R~ && redraw line in case it gets trashed.\\
  142. #\verb~^U~ && delete the entire line. \\
  143. #\verb~^W~ && delete from the current word to the end of line. \\ \hline
  144. #\multicolumn{3}{|c|}{History} \\
  145. #\verb~^P~ && move back through history.\\
  146. #\verb~^N~ && move forward through history.\\
  147. %Character@@Function
  148. %_
  149. %@@Line Editing
  150. %^B@@move back a single character.
  151. %^F@@move forward a single character.
  152. %^A@@move to the beginning of the line.
  153. %^E@@move to the end of the line.
  154. %^H, DEL@@delete the previous character.
  155. %^D@@delete the current character.
  156. %^K@@delete from current position to the end of line.
  157. %^L, ^R@@redraw line in case it gets trashed.
  158. %^U@@delete the entire line.
  159. %^W@@delete from the current word to the end of line.
  160. %_
  161. %@@History
  162. %^P@@move back through history.
  163. %^N@@move forward through history.
  164. @end table
  165.  
  166.  On the IBM PC the use of a TSR program such as DOSEDIT or CED may be
  167.  desired for line editing. For such a case GNUPLOT may be compiled with
  168.  no line editing capability (default makefile setup). Set READLINE in the
  169.  makefile and add readline.obj to the link file if GNUPLOT line editing
  170.  is to be used for the IBM PC. The following arrow keys may be used
  171.  on the IBM PC and Atari versions if readline is used:
  172.  
  173. @start table - first is interactive cleartext form
  174.   Left  Arrow     - same as ^B.
  175.   Right Arrow     - same as ^F.
  176.   Ctl Left  Arrow - same as ^A.
  177.   Ctl Right Arrow - same as ^E.
  178.   Up    Arrow     - same as ^P.
  179.   Down  Arrow     - same as ^N.
  180. #Arrow key & Function & \\ \hline
  181. #Left      & same as \verb~^B~. & \\
  182. #Right     & same as \verb~^F~. & \\
  183. #Ctl Left  & same as \verb~^A~. & \\
  184. #Ctl Right & same as \verb~^E~. & \\
  185. #Up        & same as \verb~^P~. & \\
  186. #Down      & same as \verb~^N~. & \\
  187. %Arrow key@@Function
  188. %_
  189. %Left Arrow@@same as ^B.
  190. %Right Arrow@@same as ^F.
  191. %Ctl Left Arrow@@same as ^A.
  192. %Ctl Right Arrow@@same as ^E.
  193. %Up Arrow@@same as ^P.
  194. %Down Arrow@@same as ^N.
  195. %_
  196. @end table
  197.  
  198.  The Atari version of readline defines some additional key aliases:
  199.  
  200. @start table - first is interactive cleartext form
  201.   Undo            - same as ^L.
  202.   Home            - same as ^A.
  203.   Ctrl Home       - same as ^E.
  204.   ESC             - same as ^U.
  205.   Help            - `help' plus return.
  206.   Ctrl Help       - `help '.
  207. #Arrow key & Function & \\ \hline
  208. #Undo      & same as \verb~^L~. & \\
  209. #Home      & same as \verb~^A~. & \\
  210. #Ctrl Home & same as \verb~^E~. & \\
  211. #ESC       & same as \verb~^U~. & \\
  212. #Help      & `{\bf help}' plus return. & \\
  213. #Ctrl Help & `{\bf help }'. & \\
  214. %Arrow key@@Function
  215. %_
  216. %Undo@@same as ^L.
  217. %Home@@same as ^A.
  218. %Ctrl Home@@same as ^E.
  219. %ESC@@same as ^U.
  220. %Help@@help plus return.
  221. %Ctrl Help@@help .
  222. %_
  223. @end table
  224.  
  225.  (The readline function in gnuplot is not the same as the readline used
  226.  in GNU BASH and GNU EMACS.  It is somewhat compatible however.)
  227. 2 comment
  228. ?comments
  229.  Comments are supported as follows: a # may appear in most places in a line
  230.  and GNUPLOT will ignore the rest of the line. It will not have this
  231.  effect inside quotes, inside numbers (including complex numbers), inside
  232.  command substitutions, etc. In short, it works anywhere it makes sense
  233.  to work.
  234. 2 environment
  235. ?environment
  236.  A number of shell environment variables are understood by GNUPLOT.
  237.  None of these are required, but may be useful.
  238.  
  239.  If GNUTERM is defined, it is used as the name of the terminal type to
  240.  be used. This overrides any terminal type sensed by GNUPLOT on start
  241.  up, but is itself overridden by the .gnuplot (or equivalent) start-up
  242.  file (see `start-up`), and of course by later explicit changes.
  243.  
  244.  On Unix, AmigaDOS, AtariTOS, MS-DOS and OS/2, GNUHELP may be defined
  245.  to be the pathname of the HELP file (gnuplot.gih).
  246.  
  247.  On VMS, the symbol GNUPLOT$HELP should be defined as the name of
  248.  the help library for GNUPLOT.
  249.  
  250.  On Unix, HOME is used as the name of a directory to search for
  251.  a .gnuplot file if none is found in the current directory.
  252.  On AmigaDOS, AtariTOS, MS-DOS and OS/2, GNUPLOT is used. On VMS, SYS$LOGIN:
  253.  is used. See `help start-up`.
  254.  
  255.  On Unix, PAGER is used as an output filter for help messages.
  256.  
  257.  On Unix, AtariTOS and AmigaDOS, SHELL is used for the `shell` command.
  258.  On MS-DOS and OS/2, COMSPEC is used for the `shell` command.
  259.  
  260.  On AmigaDOS, GNUFONT is used for the screen font.  For example:
  261.  "setenv GNUFONT sapphire/14".
  262.  
  263.  On MS-DOS, if the BGI interface is used, the variable `BGI` is used to point
  264.  to the full path of the BGI drivers directory. Furthermore SVGA is used to
  265.  name the Super VGA BGI driver in 800x600 res., and its mode of operation
  266.  as 'Name.Mode'.
  267.  E.g., if the Super VGA driver is C:\TC\BGI\SVGADRV.BGI and mode 3 is
  268.  used for 800x600 res., then: 'set BGI=C:\TC\BGI' and 'set SVGA=SVGADRV.3'.
  269. 2 exit
  270. ?exit
  271. ?quit
  272.  The commands `exit` and `quit` and the END-OF-FILE character
  273.  will exit GNUPLOT. All these commands will clear the output device
  274.  (as the `clear` command does) before exiting.
  275. 2 expressions
  276. ?expressions
  277.  In general, any mathematical expression accepted by C, FORTRAN,
  278.  Pascal, or BASIC is valid. The precedence of these operators is
  279.  determined by the specifications of the C programming language.
  280.  White space (spaces and tabs) is ignored inside expressions.
  281.  
  282.  Complex constants may be expressed as the {<real>,<imag>}, where <real>
  283.  and <imag> must be numerical constants. For example, {3,2}
  284.  represents 3 + 2i; {0,1} represents `i` itself. The curly braces
  285.  are explicitly required here.
  286. 3 functions
  287. ?expressions functions
  288. ?functions
  289.  The functions in GNUPLOT are the same as the corresponding functions
  290.  in the Unix math library, except that all functions accept integer,
  291.  real, and complex arguments, unless otherwise noted. The `sgn`
  292.  function is also supported, as in BASIC.
  293. @start table
  294. #Function & Arguments & Returns \\ \hline
  295. %Function@Arguments@Returns
  296. %_
  297. 4 abs
  298. ?expressions functions abs
  299. ?functions abs
  300. ?abs
  301. #abs(x) & any  &  absolute value of {\tt x}, $|x|$; same type \\
  302. #abs(x) & complex &  length of {\tt x}, $\sqrt{{\mbox{real}(x)^{2} +
  303. #\mbox{imag}(x)^{2}}}$ \\
  304. %abs(x)@any@absolute value of x, $|x|$; same type
  305. %abs(x)@complex@length of x, $sqrt{roman real (x) sup 2 + roman imag (x) sup 2}$
  306.  The `abs` function returns the absolute value of its argument. The
  307.  returned value is of the same type as the argument.
  308.  
  309.  For complex arguments, abs(x) is defined as the length of x in the
  310.  complex plane [i.e.,  sqrt(real(x)**2 + imag(x)**2) ].
  311. 4 acos
  312. ?expressions functions acos
  313. ?functions acos
  314. ?acos
  315. #acos(x) & any  & $\cos^{-1} x$ (inverse cosine) in radians \\
  316. %acos(x)@any@$cos sup -1 x$ (inverse cosine) in radians
  317.  The `acos` function returns the arc cosine (inverse cosine) of its
  318.  argument. `acos` returns its argument in radians.
  319. 4 arg
  320. ?expressions functions arg
  321. ?functions arg
  322. ?arg
  323. #arg(x) & complex & the phase of $x$ in radians\\
  324. %arg(x)@complex@the phase of $x$ in radians
  325.  The `arg` function returns the phase of a complex number, in radians.
  326. 4 asin
  327. ?expressions functions asin
  328. ?functions asin
  329. ?asin
  330. #asin(x) & any  & $\sin^{-1} x$ (inverse sin) in radians \\
  331. %asin(x)@any@$sin sup -1 x$ (inverse sin) in radians
  332.  The `asin` function returns the arc sin (inverse sin) of its argument.
  333.  `asin` returns its argument in radians.
  334. 4 atan
  335. ?expressions functions atan
  336. ?functions atan
  337. ?atan
  338. #atan(x) & any  & $\tan^{-1} x$ (inverse tangent) in radians \\
  339. %atan(x)@any@$tan sup -1 x$ (inverse tangent) in radians
  340.  The `atan` function returns the arc tangent (inverse tangent) of its
  341.  argument. `atan` returns its argument in radians.
  342. 4 besj0
  343. ?expressions functions besj0
  344. ?functions besj0
  345. ?besj0
  346. #besj0(x) & radians &  $j_{0}$ Bessel function of $x$ \\
  347. %besj0(x)@radians@$j sub 0$ Bessel function of $x$
  348.  The `besj0` function returns the j0th Bessel function of its argument.
  349.  `besj0` expects its argument to be in radians.
  350. 4 besj1
  351. ?expressions functions besj1
  352. ?functions besj1
  353. ?besj1
  354. #besj1(x) & radians & $j_{1}$ Bessel function of $x$ \\
  355. %besj1(x)@radians@$j sub 1$ Bessel function of $x$
  356.  The `besj1` function returns the j1st Bessel function of its argument.
  357.  `besj1` expects its argument to be in radians.
  358. 4 besy0
  359. ?expressions functions besy0
  360. ?functions besy0
  361. ?besy0
  362. #besy0(x) & radians & $y_{0}$ Bessel function of $x$ \\
  363. %besy0(x)@radians@$y sub 0$ Bessel function of $x$
  364.  The `besy0` function returns the y0th Bessel function of its argument.
  365.  `besy0` expects its argument to be in radians.
  366. 4 besy1
  367. ?expressions functions besy1
  368. ?functions besy1
  369. ?besy1
  370. #besy1(x) & radians & $y_{1}$ Bessel function of $x$ \\
  371. %besy1(x)@radians@$y sub 1$ Bessel function of $x$
  372.  The `besy1` function returns the y1st Bessel function of its argument.
  373.  `besy1` expects its argument to be in radians.
  374. 4 ceil
  375. ?expressions functions ceil
  376. ?functions ceil
  377. ?ceil
  378. #ceil(x) & any & $\lceil x \rceil$, smallest integer not less than $x$
  379. #(real part) \\
  380. %ceil(x)@any@$left ceiling x right ceiling$, smallest integer not less than $x$ (real part)
  381.  The `ceil` function returns the smallest integer that is not less than its
  382.  argument. For complex numbers, `ceil` returns the smallest integer
  383.  not less than the real part of its argument.
  384. 4 cos
  385. ?expressions functions cos
  386. ?functions cos
  387. ?cos
  388. #cos(x) & radians & $\cos x$, cosine of $x$ \\
  389. %cos(x)@radians@$cos~x$, cosine of $x$
  390.  The `cos` function returns the cosine of its argument. `cos` expects its
  391.  argument to be in radians.
  392. 4 cosh
  393. ?expressions functions cosh
  394. ?functions cosh
  395. ?cosh
  396. #cosh(x) & radians & $\cosh x$, hyperbolic cosine of $x$ \\
  397. %cosh(x)@radians@$cosh~x$, hyperbolic cosine of $x$
  398.  The `cosh` function returns the hyperbolic cosine of its argument.
  399.  `cosh` expects its argument to be in radians.
  400. 4 erf
  401. ?expressions functions erf
  402. ?functions erf
  403. ?erf
  404. #erf(x) & any & $\mbox{Erf}(\mbox{real}(x))$,  error function of real($x$) \\
  405. %erf(x)@any@$erf ( roman real (x))$, error function of real ($x$)
  406.  The `erf` function returns the error function of the real part of
  407.  its argument.
  408.  If the argument is a complex value, the imaginary component is ignored.
  409. 4 erfc
  410. ?expressions functions erfc
  411. ?functions erfc
  412. ?erfc
  413. #erfc(x) & any & $\mbox{Erfc}(\mbox{real}(x))$,  1.0 - error function of real($x$) \\
  414. %erfc(x)@any@$erfc ( roman real (x))$, 1.0 - error function of real ($x$)
  415.  The `erfc` function returns 1.0 - the error function of the
  416.  real part of its argument.
  417.  If the argument is a complex value, the imaginary component is ignored.
  418. 4 exp
  419. ?expressions functions exp
  420. ?functions exp
  421. ?exp
  422. #exp(x) & any & $e^{x}$,  exponential function of $x$ \\
  423. %exp(x)@any@$e sup x$, exponential function of $x$
  424.  The `exp` function returns the exponential function of its argument
  425.  (`e` raised to the power of its argument).
  426. 4 floor
  427. ?expressions functions floor
  428. ?functions floor
  429. ?floor
  430. #floor(x) & any & $\lfloor x \rfloor$,  largest integer not greater
  431. #than $x$ (real part) \\
  432. %floor(x)@any@$left floor x right floor$, largest integer not greater than $x$ (real part)
  433.  The `floor` function returns the largest integer not greater than its
  434.  argument. For complex numbers, `floor` returns the largest
  435.  integer not greater than the real part of its argument.
  436. 4 gamma
  437. ?expressions functions gamma
  438. ?functions gamma
  439. ?gamma
  440. #gamma(x) & any & $\mbox{Gamma}(\mbox{real}(x))$,  gamma function of real($x$) \\
  441. %gamma(x)@any@$GAMMA ( roman real (x))$, gamma function of real ($x$)
  442.  The `gamma` function returns the gamma function of the real part of
  443.  its argument. For integer n, gamma(n+1) = n! .
  444.  If the argument is a complex value, the imaginary component is ignored.
  445. 4 ibeta
  446. ?expressions functions ibeta
  447. ?functions ibeta
  448. ?ibeta
  449. #ibeta(p,q,x) & any & $\mbox{Ibeta}(\mbox{real}(p,q,x))$,  ibeta function of real($p$,$q$,$x$) \\
  450. %ibeta(p,q,x)@any@$Ibeta ( roman real (p,q,x))$, ibeta function of real ($p$,$q$,$x$)
  451.  The `ibeta` function returns the incomplete beta function of the real
  452.  parts of its arguments. p, q > 0 and x in [0:1]
  453.  If the arguments are complex, the imaginary components are ignored.
  454. 4 inverf
  455. ?expressions functions inverf
  456. ?functions inverf
  457. ?inverf
  458. #inverf(x) & any &  inverse error function of real($x$)  \\
  459. %inverf(x)@any@inverse error function real($x$)
  460.  The `inverf` function returns the inverse error function of the real
  461.  part of its argument.
  462. 4 igamma
  463. ?expressions functions igamma
  464. ?functions igamma
  465. ?igamma
  466. #igamma(a,x) & any & $\mbox{Igamma}(\mbox{real}(a,x))$,  igamma function of real($a$,$x$) \\
  467. %igamma(a,x)@any@$Igamma ( roman real (a,x))$, igamma function of real ($a$,$x$)
  468.  The `igamma` function returns the incomplete gamma function of the real
  469.  parts of its arguments. a > 0 and x >= 0
  470.  If the arguments are complex, the imaginary components are ignored.
  471. 4 imag
  472. ?expressions functions imag
  473. ?functions imag
  474. ?imag
  475. #imag(x) & complex &  imaginary part of $x$ as a real number \\
  476. %imag(x)@complex@imaginary part of $x$ as a real number
  477.  The `imag` function returns the imaginary part of its argument as a
  478.  real number.
  479. 4 invnorm
  480. ?expressions functions invnorm
  481. ?functions invnorm
  482. ?invnorm
  483. #invnorm(x) & any &  inverse normal distribution function of real($x$)  \\
  484. %invnorm(x)@any@inverse normal distribution function real($x$)
  485.  The `invnorm` function returns the inverse normal distribution function
  486.  of the real part of its argument.
  487. 4 int
  488. ?expressions functions int
  489. ?functions int
  490. ?int
  491. #int(x) & real &  integer part of $x$, truncated toward zero \\
  492. %int(x)@real@integer part of $x,$ truncated toward zero
  493.  The `int` function returns the integer part of its argument, truncated
  494.  toward zero.
  495. 4 lgamma
  496. ?expressions functions lgamma
  497. ?functions lgamma
  498. ?lgamma
  499. #lgamma(x) & any & $\mbox{Lgamma}(\mbox{real}(x))$,  lgamma function of real($x$) \\
  500. %lgamma(x)@any@$Lgamma ( roman real (x))$, lgamma function of real ($x$)
  501.  The `lgamma` function returns the natural logarithm of the gamma
  502.  function of the real part of its argument.
  503.  If the argument is a complex value, the imaginary component is ignored.
  504. 4 log
  505. ?expressions functions log
  506. ?functions log
  507. ?log
  508. #log(x) & any & $\log_{e} x$,  natural logarithm (base $e$) of $x$ \\
  509. %log(x)@any@$ln~x$, natural logarithm (base $e$) of $x$
  510.  The `log` function returns the natural logarithm (base `e`) of its
  511.  argument.
  512. 4 log10
  513. ?expressions functions log10
  514. ?functions log10
  515. ?log10
  516. #log10(x) & any & $\log_{10} x$,  logarithm (base $10$) of $x$ \\
  517. %log10(x)@any@${log sub 10}~x$, logarithm (base $10$) of $x$
  518.  The `log10` function returns the logarithm (base 10) of its argument.
  519. 4 norm
  520. ?expressions functions norm
  521. ?functions norm
  522. ?norm
  523. #norm(x) & any & normal distribution (Gaussian) function of real($x$) \\
  524. %norm(x)@any@$norm(x),$ normal distribution function of real($x$)
  525.  The `norm` function returns the normal distribution function
  526.  (or Gaussian) of the real part of its argument.
  527. 4 rand
  528. ?expressions functions rand
  529. ?functions rand
  530. ?rand
  531. #rand(x) & any & $\mbox{Rand}(\mbox{real}(x))$,  pseudo random number generator \\
  532. %rand(x)@any@$rand ( roman real (x))$, pseudo random number generator
  533.  The `rand` function returns a pseudo random number in the interval [0:1]
  534.  using the real part of its argument as a seed. If seed < 0 the sequence
  535.  is (re)initialized.
  536.  If the argument is a complex value, the imaginary component is ignored.
  537. 4 real
  538. ?expressions functions real
  539. ?functions real
  540. ?real
  541. #real(x) & any &  real part of $x$ \\
  542. %real(x)@any@real part of $x$
  543.  The `real` function returns the real part of its argument.
  544. 4 sgn
  545. ?expressions functions sgn
  546. ?functions sgn
  547. ?sgn
  548. #sgn(x) & any & 1 if $x>0$, -1 if $x<0$, 0 if $x=0$. imag($x$) ignored \\
  549. %sgn(x)@any@1 if $x > 0$, -1 if $x < 0$, 0 if $x = 0$. $roman imag (x)$ ignored
  550.  The `sgn` function returns 1 if its argument is positive, -1 if its
  551.  argument is negative, and 0 if its argument is 0. If the argument
  552.  is a complex value, the imaginary component is ignored.
  553. 4 sin
  554. ?expressions functions sin
  555. ?functions sin
  556. ?sin
  557. #sin(x) & radians & $\sin x$, sine of $x$ \\
  558. %sin(x)@radians@$sin~x$, sine of $x$
  559.  The `sin` function returns the sine of its argument. `sin` expects its
  560.  argument to be in radians.
  561. 4 sinh
  562. ?expressions functions sinh
  563. ?functions sinh
  564. ?sinh
  565. #sinh(x) & radians & $\sinh x$, hyperbolic sine $x$ \\
  566. %sinh(x)@radians@$sinh~x$, hyperbolic sine $x$
  567.  The `sinh` function returns the hyperbolic sine of its argument. `sinh`
  568.  expects its argument to be in radians.
  569. 4 sqrt
  570. ?expressions functions sqrt
  571. ?functions sqrt
  572. ?sqrt
  573. #sqrt(x) & any & $\sqrt{x}$,  square root of $x$ \\
  574. %sqrt(x)@any@$sqrt x $, square root of $x$
  575.  The `sqrt` function returns the square root of its argument.
  576. 4 tan
  577. ?expressions functions tan
  578. ?functions tan
  579. ?tan
  580. #tan(x) & radians & $\tan x$,  tangent of $x$ \\
  581. %tan(x)@radians@$tan~x$, tangent of $x$
  582.  The `tan` function returns the tangent of its argument. `tan` expects
  583.  its argument to be in radians.
  584. 4 tanh
  585. ?expressions functions tanh
  586. ?functions tanh
  587. ?tanh
  588. #tanh(x) & radians & $\tanh x$, hyperbolic tangent of $x$\\
  589. %tanh(x)@radians@$tanh~x$, hyperbolic tangent of $x$
  590.  The `tanh` function returns the hyperbolic tangent of its argument.
  591.  `tanh` expects its argument to be in radians.
  592. @end table
  593. 3 operators
  594. ?expressions operators
  595. ?operators
  596.  The operators in GNUPLOT are the same as the corresponding operators
  597.  in the C programming language, except that all operators accept
  598.  integer, real, and complex arguments, unless otherwise noted.
  599.  The ** operator (exponentiation) is supported, as in FORTRAN.
  600.  
  601.  Parentheses may be used to change order of evaluation.
  602. 4 binary
  603. ?expressions operators binary
  604. ?operators binary
  605. ?binary
  606.  The following is a list of all the binary operators and their
  607.  usages:
  608.  
  609. @start table - first is interactive cleartext form
  610.   Symbol      Example      Explanation
  611.    **          a**b          exponentiation
  612.    *           a*b           multiplication
  613.    /           a/b           division
  614.    %           a%b         * modulo
  615.    +           a+b           addition
  616.    -           a-b           subtraction
  617.    ==          a==b          equality
  618.    !=          a!=b          inequality
  619.    &           a&b         * bitwise AND
  620.    ^           a^b         * bitwise exclusive OR
  621.    |           a|b         * bitwise inclusive OR
  622.    &&          a&&b        * logical AND
  623.    ||          a||b        * logical OR
  624.    ?:          a?b:c       * ternary operation
  625. #\multicolumn{3}{|c|}{Binary Operators} \\
  626. #Symbol & Example & Explanation \\ \hline
  627. #\verb~**~ & \verb~a**b~ & exponentiation\\
  628. #\verb~*~ & \verb~a*b~ & multiplication\\
  629. #\verb~/~ & \verb~a/b~ & division\\
  630. #\verb~%~ & \verb~a%b~ & * modulo\\
  631. #\verb~+~ & \verb~a+b~ & addition\\
  632. #\verb~-~ & \verb~a-b~ & subtraction\\
  633. #\verb~==~ & \verb~a==b~ & equality\\
  634. #\verb~!=~ & \verb~a!=b~ & inequality\\
  635. #\verb~&~ & \verb~a&b~ & * bitwise AND\\
  636. #\verb~^~ & \verb~a^b~ & * bitwise exclusive OR\\
  637. #\verb~|~ & \verb~a|b~ & * bitwise inclusive OR\\
  638. #\verb~&&~ & \verb~a&&b~ & * logical AND\\
  639. #\verb~||~ & \verb~a||b~ & * logical OR\\
  640. #\verb~?:~ & \verb~a?b:c~ & * ternary operation\\
  641. %Symbol@Example@Explanation
  642. %_
  643. %**@a**b@exponentiation
  644. %*@a*b@multiplication
  645. %/@a/b@division
  646. %%@a%b@* modulo
  647. %+@a+b@addition
  648. %-@a-b@subtraction
  649. %==@a==b@equality
  650. %!=@a!=b@inequality
  651. %&@a&b@* bitwise AND
  652. %^@a^b@* bitwise exclusive OR
  653. %|@a|b@* bitwise inclusive OR
  654. %&&@a&&b@* logical AND
  655. %||@a||b@* logical OR
  656. %?:@a?b:c@* ternary operation
  657.  
  658. @end table
  659.  (*) Starred explanations indicate that the operator requires
  660.  integer arguments.
  661.  
  662.  Logical AND (&&) and OR (||) short-circuit the way they do in C.
  663.  That is, the second && operand is not evaluated if the first is
  664.  false; the second || operand is not evaluated if the first is true.
  665.  
  666.  The ternary operator evaluates its first argument (a). If it is
  667.  true (non-zero) the second argument (b) is evaluated and returned,
  668.  otherwise the third argument (c) is evaluated and returned.
  669. 4 unary
  670. ?expressions operators unary
  671. ?operators unary
  672. ?unary
  673.  The following is a list of all the unary operators and their
  674.  usages:
  675.  
  676. @start table - first is interactive cleartext form
  677.   Symbol     Example      Explanation
  678.    -           -a          unary minus
  679.    ~           ~a        * one's complement
  680.    !           !a        * logical negation
  681.    !           a!        * factorial
  682. #\multicolumn{3}{|c|}{Unary Operators}\\
  683. #Symbol & Example & Explanation \\ \hline
  684. #\verb@-@ & \verb@-a@ & unary minus \\
  685. #\verb@~@ & \verb@~a@ & * one's complement \\
  686. #\verb@!@ & \verb@!a@ & * logical negation \\
  687. #\verb@!@ & \verb@a!@ & * factorial \\
  688. %-@-a@unary minus
  689. %~@~a@* one's complement
  690. %!@!a@* logical negation
  691. %!@a!@* factorial
  692.  
  693. @end table
  694.  (*) Starred explanations indicate that the operator requires an
  695.  integer argument.
  696.  
  697.  The factorial operator returns a real number to allow a greater range.
  698. 2 help
  699. ?help
  700.  The `help` command displays on-line help. To specify information on a
  701.  particular topic use the syntax:
  702.  
  703.          help {<topic>}
  704.  
  705.  If <topic> is not specified, a short message is printed about
  706.  GNUPLOT. After help for the requested topic is given, help for a
  707.  subtopic may be requested by typing its name, extending the help
  708.  request. After that subtopic has been printed, the request may be
  709.  extended again, or simply pressing return goes back one level to the
  710.  previous topic. Eventually, the GNUPLOT command line will return.
  711. 2 load
  712. ?load
  713.  The `load` command executes each line of the specified input file as
  714.  if it had been typed in interactively. Files created by the `save`
  715.  command can later be `load`ed. Any text file containing valid
  716.  commands can be created and then executed by the `load` command.
  717.  Files being `load`ed may themselves contain `load` commands. See
  718.  `comment` for information about comments in commands.
  719.  
  720.  The `load` command must be the last command on the line.
  721.  
  722.  Syntax:
  723.          load "<input-file>"
  724.  
  725.  The name of the input file must be enclosed in quotes.
  726.  
  727.  Examples:
  728.  
  729.          load 'work.gnu'
  730.          load "func.dat"
  731.  
  732.  The `load` command is performed implicitly on any file names given as
  733.  arguments to GNUPLOT. These are loaded in the order specified, and
  734.  then GNUPLOT exits.
  735. 2 pause
  736. ?pause
  737.  The `pause` command displays any text associated with the command and
  738.  then waits a specified amount of time or until the carriage return is
  739.  pressed.  `pause` is especially useful in conjunction with `load` files.
  740.  
  741.  Syntax:
  742.          pause <time> {"<string>"}
  743.  
  744.  <time> may be any integer constant or expression. Choosing -1 will
  745.  wait until a carriage return is hit, zero (0) won't pause at all, and
  746.  a positive integer will wait the specified number of seconds.
  747.  
  748.  Note: Since `pause` is not part of the plot it may interact with
  749.  different device drivers differently (depending upon how text and
  750.  graphics are mixed).
  751.  
  752.  Examples:
  753.          pause -1    # Wait until a carriage return is hit
  754.          pause 3     # Wait three seconds
  755.          pause -1  "Hit return to continue"
  756.          pause 10  "Isn't this pretty?  It's a cubic-spline."
  757.  
  758. 2 plot
  759. ?plot
  760. ?splot
  761.  `plot` and `splot` are the primary commands of the program. They plot
  762.  functions and data in many, many ways. `plot` is used to plot 2-d
  763.  functions and data, while `splot` plots 3-d surfaces and data.
  764.  
  765.  Syntax:
  766.  
  767.         plot {ranges} {<function> | {"<datafile>" {using ...}}} {title} {style}
  768.                      {, <function> {title} {style}...}
  769.  
  770.         splot {ranges} {<function> | {"<datafile>" {index i} {using ...}}}
  771.                      {title} {style} {, <function> {title} {style}...}
  772.  
  773.  where either a <function> or the name of a data file enclosed in quotes is
  774.  supplied.  A function is a mathematical expression, or a pair (`plot`) or
  775.  triple (`splot`) of mathematical expressions in the case of parametric
  776.  functions.  User-defined functions and variables may also be defined here.
  777.  
  778.  `plot` and `splot` commands can be as simple as
  779.  
  780.          plot sin(x)
  781.  
  782.  and
  783.  
  784.          splot x * y
  785.  
  786.  or as complex as (!)
  787.  
  788.   plot [t=1:10] [-pi:pi*2] tan(t),"data.1" using 2:3 with lines,t**2 with points
  789. 3 data-file
  790. ?plot data-file
  791. ?plot datafile
  792. ?splot data-file
  793. ?splot datafile
  794. ?data-file
  795. ?datafile
  796. ?data
  797.  Discrete data contained in a file can be displayed by specifying the
  798.  name of the data file (enclosed in quotes) on the `plot` or `splot`
  799.  command line. Data files should contain one data point per line.
  800.  Lines beginning with # (or ! on VMS) will be treated as comments
  801.  and ignored. For `plot`s, each data point represents an (x,y)
  802.  pair. For `splot`s, each point is an (x,y,z) triple. For `plot`s with
  803.  error bars (see `plot errorbars`), each data point is either
  804.  (x,y,ydelta) or (x,y,ylow,yhigh). In all cases, the numbers on each
  805.  line of a data file must be separated by blank space. This blank
  806.  space divides each line into columns.
  807.  
  808.  For `plot`s the x value may be omitted, and for `splot`s the x
  809.  and y values may be omitted. In either case the omitted values are
  810.  assigned the current coordinate number. Coordinate numbers start at 0
  811.  and are incremented for each data point read.
  812.  
  813.  To specify other formats, see `plot datafile using`.
  814.  
  815.  In the `plot` command, blank lines in the data file cause a break in
  816.  the plot. There will be no line drawn between the preceding and
  817.  following points if the plot style is `lines` or `linespoints` (see
  818.  `plot style`). This does not change the plot style, as would plotting
  819.  the data as separate curves.
  820.  
  821.  This example compares the data in the file population.dat to a
  822.  theoretical curve:
  823.  
  824.          pop(x) = 103*exp((1965-x)/10)
  825.          plot [1960:1990] 'population.dat', pop(x)
  826.  
  827.  The file population.dat might contain:
  828.  
  829.          # Gnu population in Antarctica since 1965
  830.          1965   103
  831.          1970   55
  832.          1975   34
  833.          1980   24
  834.          1985   10
  835.  
  836.  When a data file is plotted, `samples` and `isosamples` are ignored.
  837.  Curves plotted using the `plot` command are automatically extended to
  838.  hold the entire curve. Similarly grid data plotted using the `splot`
  839.  command is automatically extended, using the assumption that isolines
  840.  are separated by blank lines (a line with only a CR/LF in it).
  841.  
  842.  Implicitly, there are two types of 3-d datafiles. If all the isolines
  843.  are of the same length, the data is assumed to be a grid data, i.e.,
  844.  the data has a grid topology. Cross isolines in the other parametric
  845.  direction (the ith cross isoline passes through the ith point of all the
  846.  provided isolines) will also be drawn for grid data. (Note contouring
  847.  is available for grid data only.) If all the isolines are not of the
  848.  same length, no cross isolines will be drawn and contouring that data
  849.  is impossible.
  850.  
  851.  For splot, data files may contain more than one mesh and by default
  852.  all meshes are plotted. Meshes are separated from each other, in the
  853.  file, by double blank lines. To control and splot a single mesh from
  854.  a multi mesh file, use the index modifier. See `splot index` for more.
  855.  
  856.  For splot if 3-d datafile and using format (see `splot datafile using`)
  857.  specify only z (height field), a non parametric mode must be specified.
  858.  If, on the other hand, x, y, and z are all specified, a parametric
  859.  mode should be selected (see `set parametric`) since data is defining a
  860.  parametric surface.
  861.  
  862.  A simple example of plotting a 3-d data file is
  863.  
  864.          set parametric
  865.          splot 'glass.dat'
  866.  
  867.  or
  868.  
  869.          set noparametric
  870.          splot 'datafile.dat'
  871.  
  872.  where the file datafile.dat might contain:
  873.  
  874.          # The valley of the Gnu.
  875.          10
  876.          10
  877.          10
  878.  
  879.          10
  880.          5
  881.          10
  882.  
  883.          10
  884.          1
  885.          10
  886.  
  887.          10
  888.          0
  889.          10
  890.  
  891.  Note datafile.dat defines a 4 by 3 grid ( 4 rows of 3 points each ).
  892.  Rows are separated by blank lines.
  893.  
  894.  On some computer systems with a popen function (UNIX), the datafile
  895.  can be piped through a shell command by starting the file name
  896.  with a '<'.  For example:
  897.  
  898.          pop(x) = 103*exp(-x/10)
  899.          plot '< awk "{print $1-1965, $2}" population.dat', pop(x)
  900.  
  901.  would plot the same information as the first population example
  902.  but with years since 1965 as the x axis.  If you want to execute
  903.  this example, you have to delete all comments from the data file
  904.  above or substitute the following command for the first part of the
  905.  command above (the part up to the comma):
  906.  
  907.          plot '< awk "$0 !~ /^#/ {print $1-1965, $2}" population.dat'
  908.  
  909.  It is also possible to apply a single function to the "y" value only,
  910.  e.g.
  911.  
  912.          plot 'population.dat' thru p(x)
  913.  
  914.  For more information about 3-d plotting, see `splot`.
  915. 4 using
  916. ?plot data-file using
  917. ?plot datafile using
  918. ?splot data-file using
  919. ?splot datafile using
  920. ?using
  921.  The format of data within a file can be selected with the `using`
  922.  option. An explicit scanf string can be used, or simpler column
  923.  choices can be made.
  924.  
  925.  Syntax:
  926.  
  927.          plot "datafile" { using { <ycol> |
  928.                                    <xcol>:<ycol> |
  929.                                    <xcol>:<ycol>:<ydelta> |
  930.                                    <xcol>:<ycol>:<ylow>:<yhigh> |
  931.                                    <xcol>:<ycol>:<ylow>:<yhigh>:<boxwidth> }
  932.                                  {"<scanf string>"} } ...
  933.  
  934.  and
  935.  
  936.          splot "datafile" { using { <xcol>:<ycol>:<zcol> | <zcol> }
  937.                                   {"<scanf string>"} } ...
  938.  
  939.  <xcol>, <ycol>, and <zcol> explicitly select the columns to plot from
  940.  a space or tab separated multicolumn data file. If only <ycol> is
  941.  selected for `plot`, <xcol> defaults to 1. If only <zcol> is selected
  942.  for `splot`, then only that column is read from the file. An <xcol> of
  943.  0 forces <ycol> to be plotted versus its coordinate number. <xcol>,
  944.  <ycol>, and <zcol> can be entered as constants or expressions.
  945.  
  946.  If errorbars (see also `plot errorbars`) are used for `plot`s,
  947.  ydelta (for example, a +/- error) should be provided as the third
  948.  column, or ylow and yhigh as third and fourth columns.
  949.  
  950.  If boxes or boxerrorbars are used for `plot`s, a fifth column to
  951.  specify the width of the box may be given.  This implies that columns
  952.  three and four must also be provided even if they are not used.
  953.  If you want to plot boxes from a data file with three columns,
  954.  set ylow and yhigh to y using the following command:
  955.          plot "datafile" using 1:2:2:2:3 with boxes
  956.  
  957.  Scanf strings override any <xcol>:<ycol>(:<zcol>) choices, except for
  958.  ordering of input, e.g.,
  959.          plot "datafile" using 2:1 "%f%*f%f"
  960.  causes the first column to be y and the third column to be x.
  961.  
  962.  If the scanf string is omitted, the default is generated based on the
  963.  <xcol>:<ycol>(:<zcol>) choices. If the `using` option is omitted, "%f%f"
  964.  is used for `plot` ("%f%f%f%f" for `errorbars` `plot`s) and "%f%f%f" is
  965.  used for `splot`.
  966.  
  967.  Examples:
  968.  
  969.          plot "MyData" using "%*f%f%*20[^\n]%f" with lines
  970.  
  971.  Data are read from the file "MyData" using the format
  972.  "%*f%f%*20[^\n]%f". The meaning of this format is: "%*f" ignore the
  973.  first number, "%f" then read in the second and assign to x,
  974.  "%*20[^\n]" then ignore 20 non-newline characters, "%f" then read in
  975.  the y value.
  976.  
  977.          n=3;
  978.          plot "MyData", "MyData" using n
  979.  
  980.  causes GNUPLOT to plot the second and third columns of MyData versus
  981.  the first column. The command 'n=4; replot' would then plot the second
  982.  and fourth columns of MyData versus the first column.
  983.  
  984.          splot "glass.dat" using 1
  985.  
  986.  causes GNUPLOT to plot the first coordinate of the points of glass.dat
  987.  as the z coordinate while ignoring the other two coordinates.
  988.  
  989.  Note: GNUPLOT first reads a line of the data file into a buffer and
  990.  then does a
  991.          sscanf(input_buffer, scanf_string, &x, &y{, &z});
  992.  where 'x', 'y', and 'z' are of type 'float'. Any scanf string that
  993.  specifies two (three for `splot`, three or four for `errorbars`) float
  994.  numbers may be used.
  995. 3 errorbars
  996. ?plot errorbars
  997. ?errorbars
  998.  Error bars are supported for 2-d data file plots by reading one or
  999.  two additional columns specifying ydelta or ylow and yhigh
  1000.  respectively. No support exists for x error bars or any error bars
  1001.  for `splot`s.
  1002.  
  1003.  In the default situation, GNUPLOT expects to see three or four
  1004.  numbers on each line of the data file, either (x, y, ydelta) or
  1005.  (x, y, ylow, yhigh). The x coordinate must be specified. The order
  1006.  of the numbers must be exactly as given above. Data files in this
  1007.  format can easily be plotted with error bars:
  1008.  
  1009.          plot "data.dat" with errorbars
  1010.  
  1011.  The error bar is a vertical line plotted from (x, ylow) to (x,
  1012.  yhigh). If ydelta is specified instead of ylow and yhigh,
  1013.  ylow=y-ydelta and yhigh=y+ydelta are derived. If there
  1014.  are only two numbers on the line, yhigh and ylow are both set to
  1015.  y. To get lines plotted between the data points, `plot` the
  1016.  data file twice, once with errorbars and once with lines.
  1017.  
  1018.  If y autoscaling is on, the y range will be adjusted to fit the
  1019.  error bars.
  1020.  
  1021.  The `using` option may be used to specify how columns of the data file
  1022.  are to be assigned to x, y, ydelta, ylow, and yhigh. The x column must
  1023.  be provided and both the x and y columns must appear before the
  1024.  errorbar columns. If three column numbers are given, they are x, y,
  1025.  and ydelta. If four columns are given, they are x, y, ylow, and
  1026.  yhigh.
  1027.  
  1028.  Examples:
  1029.  
  1030.          plot "data.dat" using 1:2:3:4 with errorbars
  1031.          plot "data.dat" using 3:2:6 with errorbars
  1032.          plot "data.dat" using 3:4:8:7 with errorbars
  1033.  
  1034.  The first example reads, x, y, ylow, and yhigh, from columns 1, 2, 3,
  1035.  and 4. This is equivalent to the default.  The second example reads x
  1036.  from the third column, y from second and ydelta from the sixth column.
  1037.  The third example reads x from the third column, y from the fourth,
  1038.  ylow from the eighth, and yhigh from seventh columns.
  1039.  
  1040.  See also `plot using` and `plot style`.
  1041. 3 parametric
  1042. ?plot parametric
  1043. ?splot parametric
  1044. ?parametric
  1045.  When in parametric mode (`set parametric`) mathematical expressions must
  1046.  be given in pairs for `plot` and in triplets for `splot`:
  1047.          plot sin(t),t**2
  1048.  or
  1049.          splot cos(u)*cos(v),cos(u)*sin(v),sin(u)
  1050.  
  1051.  Data files are plotted as before, except any preceding parametric
  1052.  function must be fully specified before a data file is given as a
  1053.  plot. In other words, the x parametric function (sin(t) above) and
  1054.  the y parametric function (t**2 above) must not be interrupted with
  1055.  any modifiers or data functions; doing so will generate a syntax error
  1056.  stating that the parametric function is not fully specified.
  1057.  
  1058.  Ranges take on a different meaning when in parametric mode. The first
  1059.  range on the `plot` command is the `trange`, the next is the `xrange`,
  1060.  and the last is the `yrange`. For `splot` the order is `urange`,
  1061.  `vrange`, `xrange`, `yrange`, and finally `zrange`. The following
  1062.  `plot` command shows setting the `trange` to [-pi:pi], the `xrange` to
  1063.  [-1.3:1.3] and the `yrange` to [-1:1] for the duration of the plot:
  1064.          plot [-pi:pi] [-1.3:1.3] [-1:1] sin(t),t**2
  1065.  
  1066.  Other modifiers, such as `with` and `title`, may be specified only
  1067.  after the parametric function has been completed:
  1068.          plot sin(t),t**2 title 'Parametric example' with linespoints
  1069.  
  1070.  
  1071. 3 ranges
  1072. ?splot ranges
  1073. ?plot ranges
  1074. ?ranges
  1075.  The optional range specifies the region of the plot that will be
  1076.  displayed.
  1077.  
  1078.  Ranges may be provided on the `plot` and `splot` command line and
  1079.  affect only that plot, or in the `set xrange`, `set yrange`, etc.,
  1080.  commands, to change the default ranges for future plots.
  1081.  
  1082.  Syntax:
  1083.          [{<dummy-var> =} {<xmin> : <xmax>}] { [{<ymin> : <ymax>}] }
  1084.  
  1085.  where <dummy-var> is the independent variable (the defaults are x and
  1086.  y, but this may be changed with `set dummy`) and the min and max
  1087.  terms can be constant expressions.
  1088.  
  1089.  Both the min and max terms are optional. The ':' is also optional
  1090.  if neither a min nor a max term is specified. This allows '[ ]' to
  1091.  be used as a null range specification.
  1092.  
  1093.  Specifying a range in the `plot` command line turns autoscaling for
  1094.  that axis off for that plot. Using one of the `set` range commands
  1095.  turns autoscaling off for that axis for future plots, unless changed
  1096.  later. (See `set autoscale`).
  1097.  
  1098.  Examples:
  1099.  
  1100.  This uses the current ranges:
  1101.          plot cos(x)
  1102.  
  1103.  This sets the x range only:
  1104.          plot [-10:30] sin(pi*x)/(pi*x)
  1105.  
  1106.  This is the same, but uses t as the dummy-variable:
  1107.          plot [t = -10 :30]  sin(pi*t)/(pi*t)
  1108.  
  1109.  This sets both the x and y ranges:
  1110.          plot [-pi:pi] [-3:3]  tan(x), 1/x
  1111.  
  1112.  This sets only the y range, and turns off autoscaling on both axes:
  1113.          plot [ ] [-2:sin(5)*-8] sin(x)**besj0(x)
  1114.  
  1115.  This sets xmax and ymin only:
  1116.          plot [:200] [-pi:]  exp(sin(x))
  1117.  
  1118.  This sets the x, y, and z ranges:
  1119.          splot [0:3] [1:4] [-1:1] x*y
  1120. 3 index
  1121. ?splot index
  1122. ?index
  1123.  Splotting of multi mesh data files can be controlled via the index modifier.
  1124.  A data file can contain more than one mesh, and in that case all meshes
  1125.  in the file will be splotted by default. Meshes are separated from each
  1126.  other, in the data file, by double blank lines. To splot a single mesh in
  1127.  a multi mesh file use the index modifier which specify which mesh to splot.
  1128.  First mesh is mesh 0.
  1129.  
  1130.  Example:
  1131.  
  1132.  splot "data1" index 2 with points
  1133.  
  1134.  will splot the third mesh in file data1 with points.
  1135. 3 style
  1136. ?plot style
  1137. ?splot style
  1138. ?style
  1139. ?plot with
  1140. ?with
  1141.  Plots may be displayed in one of eight styles: `lines`, `points`,
  1142.  `linespoints`, `impulses`, `dots`, `errorbars`, `steps`, `boxes`, or
  1143.  `boxerrorbars`.  The `lines` style connects adjacent points with lines.
  1144.  The `points` style displays a small symbol at each point.
  1145.  The `linespoints` style does both `lines` and `points`.
  1146.  The `impulses` style displays a vertical line from the x axis
  1147.  (or from the grid base for `splot`) to each point. The `dots` style
  1148.  plots a tiny dot at each point; this is useful for
  1149.  scatter plots with many points.
  1150.  
  1151.  The `errorbars` style is only relevant to 2-d data file plotting. It
  1152.  is treated like `points` for `splot`s and function `plot`s. For data
  1153.  `plot`s, `errorbars` is like `points`, except that a vertical error
  1154.  bar is also drawn: for each point (x,y), a line is drawn from
  1155.  (x,ylow) to (x,yhigh). A tic mark is placed at the ends of the error
  1156.  bar. The ylow and yhigh values are read from the data file's columns,
  1157.  as specified with the `using` option to plot. See `plot errorbars` for
  1158.  more information.
  1159.  
  1160.  The `boxes` style is only relevant to 2-d plotting.  It draws
  1161.  a box centred about the given x coordinate from the yaxis to the given
  1162.  y coordinate.   The width of the box is obtained in one of three
  1163.  ways.  If a data file has a fifth column, this will be used to set
  1164.  the width of the box.  Otherwise, if a width has been set using the
  1165.  `set boxwidth` command, this will be used.  Otherwise the width of each
  1166.  box will be calculated automatically so that it touches the adjacent
  1167.  boxes.  Another style called `boxerrorbars` is also available and is
  1168.  only  relevant to 2-d data file plotting.  This style is a combination
  1169.  of the `boxes` and `errorbars` styles.
  1170.  
  1171.  The `steps` style is only relevant to 2-d plotting.  This style
  1172.  connects consecutive points with two line segments: the first
  1173.  from (x1,y1) to (x2,y1) and the second from (x2,y1) to (x2,y2).
  1174.  
  1175.  Default styles are chosen with the `set function style` and
  1176.  `set data style` commands.
  1177.  
  1178.  By default, each function and data file will use a different
  1179.  line type and point type, up to the maximum number of available
  1180.  types. All terminal drivers support at least six different point
  1181.  types, and re-use them, in order, if more than six are required.
  1182.  The LaTeX driver supplies an additional six point types (all variants
  1183.  of a circle), and thus will only repeat after twelve curves are
  1184.  plotted with points.
  1185.  
  1186.  If desired, the style and (optionally) the line type and point type
  1187.  used for a curve can be specified.
  1188.  
  1189.  Syntax:
  1190.  
  1191.          with <style> {<linetype> {<pointtype>}}
  1192.  
  1193.  where <style> is either `lines`, `points`, `linespoints`, `impulses`,
  1194.  `dots`, `steps`, or `errorbars`. The <linetype> and <pointtype> are
  1195.  positive integer constants or expressions and specify the line type
  1196.  and point type to be used for the plot. Line type 1 is the first line
  1197.  type used by default, line type 2 is the second line type used by
  1198.  default, etc.
  1199.  
  1200.  Examples:
  1201.  
  1202.  This plots sin(x) with impulses:
  1203.          plot sin(x) with impulses
  1204.  
  1205.  This plots x*y with points, x**2 + y**2 default:
  1206.          splot x*y w points, x**2 + y**2
  1207.  
  1208.  This plots tan(x) with the default function style, "data.1" with lines:
  1209.          plot [ ] [-2:5] tan(x), "data.1" with l
  1210.  
  1211.  This plots "leastsq.dat" with impulses:
  1212.          plot 'leastsq.dat' w i
  1213.  
  1214.  This plots the data file 'population' with boxes:
  1215.          plot "population" with boxes
  1216.  
  1217.  This plots "exper.dat" with errorbars and lines connecting the points:
  1218.          plot 'exper.dat' w lines, 'exper.dat' w errorbars
  1219.  
  1220.  Here 'exper.dat' should have three or four data columns.
  1221.  
  1222.  This plots x**2 + y**2 and x**2 - y**2 with the same line type:
  1223.          splot x**2 + y**2 with line 1, x**2 - y**2 with line 1
  1224.  
  1225.  This plots sin(x) and cos(x) with linespoints, using the
  1226.  same line type but different point types:
  1227.          plot sin(x) with linesp 1 3, cos(x) with linesp 1 4
  1228.  
  1229.  This plots file "data" with points style 3:
  1230.          plot "data" with points 1 3
  1231.  Note that the line style must be specified when specifying the point
  1232.  style, even when it is irrelevant. Here the line style is 1 and the
  1233.  point style is 3, and the line style is irrelevant.
  1234.  
  1235.  See `set style` to change the default styles.
  1236. 3 title
  1237. ?plot title
  1238. ?splot title
  1239.  A title of each plot appears in the key. By default the title is
  1240.  the function or file name as it appears on the plot command line.
  1241.  The title can be changed by using the `title` option. This option
  1242.  should precede any `with` option.
  1243.  
  1244.  Syntax:
  1245.          title "<title>"
  1246.  
  1247.  where <title> is the new title of the plot and must be enclosed in
  1248.  quotes. The quotes will not be shown in the key.
  1249.  
  1250.  Examples:
  1251.  
  1252.  This plots y=x with the title 'x':
  1253.          plot x
  1254.  
  1255.  This plots the "glass.dat" file with the title 'surface of revolution':
  1256.          splot "glass.dat" title 'surface of revolution'
  1257.  
  1258.  This plots x squared with title "x^2" and "data.1" with title
  1259.  'measured data':
  1260.          plot x**2 title "x^2", "data.1" t 'measured data'
  1261.  
  1262.  The title can be omitted from the key with the "notitle" option for
  1263.  plot and splot.  This can be useful when some curves
  1264.  are plotted solely for decoration; for example, if one wanted a
  1265.  circular border for a polar plot, he could say:
  1266.  
  1267.  Example:
  1268.         set polar
  1269.         plot my_function(x), 1 notitle
  1270.  
  1271.  This would generate a key entry for "my_function" but not for "1".
  1272.  See the poldat.dem example.
  1273.  
  1274.  
  1275. 2 print
  1276. ?print
  1277.  The `print` command prints the value of <expression> to the screen.
  1278.  
  1279.  Syntax:
  1280.          print <expression>
  1281.  
  1282.  See `expressions`.
  1283. 2 pwd
  1284. ?pwd
  1285.  The `pwd` command prints the name of the working directory to the screen.
  1286.  
  1287.  Syntax:
  1288.          pwd
  1289. 2 quit
  1290. ?quit
  1291.  The `exit` and `quit` commands and END-OF-FILE character will exit
  1292.  GNUPLOT. All these commands will clear the output device (as the
  1293.  `clear` command does) before exiting.
  1294. 2 replot
  1295. ?replot
  1296.  The `replot` command without arguments repeats the last `plot` or `splot`
  1297.  command. This can be useful for viewing a plot with different `set`
  1298.  options, or when generating the same plot for several devices.
  1299.  
  1300.  Arguments specified after a `replot` command will be added onto the last
  1301.  `plot` (`splot`) command (with an implied ',' separator) before it is
  1302.  repeated. `replot` accepts the same arguments as the `plot` (`splot`)
  1303.  commands except that ranges cannot be specified.
  1304.  See `command line-editing` for ways to edit the last `plot`
  1305.  (`splot`) command.
  1306. 2 reread
  1307. ?reread
  1308.  The `reread` command causes the current gnuplot command file, as specified
  1309.  by a `load` command or on the command line, to be reset to its starting
  1310.  point before further commands are read from it.  This essentially implements
  1311.  an endless loop of the commands from the beginning of the command file to
  1312.  the `reread` command.  The `reread` command has no effect if input from
  1313.  standard input.
  1314. 2 save
  1315. ?save
  1316.  The `save` command saves user-defined functions, variables, set
  1317.  options or all three plus the last `plot` (`splot`) command to the
  1318.  specified file.
  1319.  
  1320.  Syntax:
  1321.          save  {<option>} "<filename>"
  1322.  
  1323.  where <option> is `functions`, `variables` or `set`. If no option is
  1324.  used, GNUPLOT saves functions, variables, set options and the last `plot`
  1325.  (`splot`) command.
  1326.  
  1327.  `save`d files are written in text format and may be read by the `load`
  1328.  command.
  1329.  
  1330.  The filename must be enclosed in quotes.
  1331.  
  1332.  Examples:
  1333.  
  1334.          save "work.gnu"
  1335.          save functions 'func.dat'
  1336.          save var 'var.dat'
  1337.          save set "options.dat"
  1338. 2 set-show
  1339. ?set
  1340. ?show
  1341. ?show all
  1342.  The `set` command sets LOTS of options.
  1343.  
  1344.  The `show` command shows their settings. `show all` shows all the
  1345.  settings.
  1346. 3 angles
  1347. ?set angles
  1348. ?show angles
  1349. ?angles
  1350. ?set angles degrees
  1351.  By default, GNUPLOT assumes the independent variable in polar plots
  1352.  is in units of radians. If `set angles degrees` is specified before
  1353.  `set polar` then the default range is [0:360] and the independent
  1354.  variable has units of degrees. This is particularly useful for
  1355.  plots of data files. The angle setting also hold for the 3-d
  1356.  mapping as set via the `set mapping` command.
  1357.  
  1358.  Syntax:
  1359.          set angles { degrees | radians }
  1360.          show angles
  1361. 3 arrow
  1362. ?set arrow
  1363. ?set noarrow
  1364. ?show arrow
  1365. ?arrow
  1366. ?noarrow
  1367.  Arbitrary arrows can be placed on a plot using the `set arrow`
  1368.  command.
  1369.  
  1370.  Syntax:
  1371.  
  1372.           set arrow {<tag>} {from <sx>,<sy>{,<sz>}}
  1373.                             {to <ex>,<ey>{,<ez>}} {{no}head}
  1374.           set noarrow {<tag>}
  1375.           show arrow
  1376.  
  1377.  
  1378.  Unspecified coordinates default to 0. The x, y, and z values are in
  1379.  the graph's coordinate system. The z coordinate is only used in
  1380.  `splot` commands. <tag> is an integer that identifies the arrow. If no
  1381.  tag is given, the lowest unused tag value is assigned automatically.
  1382.  The tag can be used to delete or change a specific arrow. To change
  1383.  any attribute of an existing arrow, use the `set arrow` command with
  1384.  the appropriate tag, and specify the parts of the arrow to be
  1385.  changed. Specifying nohead requests the arrow be drawn without a head
  1386.  (yielding a line segment). By default, arrows have heads.
  1387.  
  1388.  Arrows outside the plotted boundaries are permitted but may cause
  1389.  device errors.
  1390.  
  1391.  Examples:
  1392.  
  1393.  To set an arrow pointing from the origin to (1,2), use:
  1394.           set arrow to 1,2
  1395.  To set an arrow from (-10,4,2) to (-5,5,3), and tag the arrow number
  1396.  3, use:
  1397.           set arrow 3 from -10,4,2 to -5,5,3
  1398.  To change the preceding arrow begin at 1,1,1, without an arrow head,
  1399.  use:
  1400.           set arrow 3 from 1,1,1 nohead
  1401.  To delete arrow number 2 use:
  1402.           set noarrow 2
  1403.  To delete all arrows use:
  1404.           set noarrow
  1405.  To show all arrows (in tag order) use:
  1406.           show arrow
  1407. 3 autoscale
  1408. ?set autoscale
  1409. ?set noautoscale
  1410. ?show autoscale
  1411. ?autoscale
  1412. ?noautoscale
  1413.  Auto scaling may be set individually on the x, y or z axis
  1414.  or globally on all axes. The default is to autoscale all axes.
  1415.  
  1416.  When autoscaling, the plot range is automatically computed and the
  1417.  dependent axis (y for a `plot` and z for `splot`) is scaled to
  1418.  include the range of the function or data being plotted.
  1419.  
  1420.  If autoscaling of the dependent axis (y or z) is not set, the
  1421.  current y or z range is used.
  1422.  
  1423.  See `set yrange` or `set zrange`.
  1424.  
  1425.  Autoscaling the independent variables (x for `plot` and x,y for
  1426.  `splot`) is a request to set the domain to match any data file being
  1427.  plotted. If there are no data files then autoscaling an independent
  1428.  variable has no effect. In other words, in the absence of a data
  1429.  file, functions alone do not affect the x range (or the y range if
  1430.  plotting z = f(x,y)).
  1431.  
  1432.  See `set xrange`, or `set yrange`.
  1433.  
  1434.  The behavior of autoscaling remains consistent in parametric mode,
  1435.  however, there are more dependent variables and hence more control
  1436.  over x, y, and z plot scales. In parametric mode, the independent or
  1437.  dummy variable is t for `plot`s and u,v for `splot`s.  Autoscale in
  1438.  parametric mode, then, controls all ranges (t, u, v, x, y, and z) and
  1439.  allows x, y, and z to be fully autoscaled.
  1440.  
  1441.  See `set parametric`.
  1442.  
  1443.  Syntax:
  1444.          set autoscale <axes>
  1445.          set noautoscale <axes>
  1446.          show autoscale
  1447.  
  1448.  where <axes> is either `x`, `y`, `z` or `xy`. If <axes> is not given
  1449.  then all axes are assumed.
  1450.  
  1451.  Examples:
  1452.  
  1453.  This sets autoscaling of the y axis. x axis autoscaling is not
  1454.  affected.
  1455.          set autoscale y
  1456.  
  1457.  This sets autoscaling of the x and y axes.
  1458.          set autoscale xy
  1459.  
  1460.  This sets autoscaling of the x, y and z axes.
  1461.          set autoscale
  1462.  
  1463.  This disables autoscaling of the x, y and z axes.
  1464.          set noautoscale
  1465.  
  1466.  This disables autoscaling of the z axis only.
  1467.          set noautoscale z
  1468. 4 parametric mode
  1469. ?autoscale parametric
  1470. ?set autoscale t
  1471.  When in parametric mode (`set parametric`) the xrange is as
  1472.  fully scalable as the yrange. In other words, in parametric
  1473.  mode the x axis can be automatically scaled to fit the range
  1474.  of the parametric function that is being plotted. Of course,
  1475.  the y axis can also be automatically scaled just as in the
  1476.  non-parametric case. If autoscaling on the x axis is not set,
  1477.  the current x range is used.
  1478.  
  1479.  When there is a mix of data files and functions, the xrange of
  1480.  the functions is selected as that of the data files if autoscale
  1481.  is true for x. While this keeps the behavior compatible with
  1482.  non-parametric plotting, it may not be retained in the future.
  1483.  The problem is that, in parametric mode, the x and y ranges are
  1484.  not as distinguishable as in the non-parametric mode and this
  1485.  behavior may not be the most useful.
  1486.  
  1487.  For completeness a last command `set autoscale t` is accepted.
  1488.  However, the effect of this "scaling" is very minor. When
  1489.  GNUPLOT determines that the t range would be empty it makes a
  1490.  small adjustment if autoscaling is true. Otherwise, GNUPLOT
  1491.  gives an error. Such behavior may, in fact, not be very useful
  1492.  and the command `set autoscale t` is certainly questionable.
  1493.  
  1494.  `splot` extends the above idea similarly. If autoscaling is set then
  1495.  x, y, and z ranges are computed and each axis scaled to fit the
  1496.  resulting data.
  1497. 3 border
  1498. ?set border
  1499. ?set noborder
  1500. ?show border
  1501. ?border
  1502. ?noborder
  1503.  The `set border` and `set noborder` commands controls the display of
  1504.  the plot borders for the `plot` and `splot` commands.
  1505.  
  1506.  Syntax:
  1507.          set border
  1508.          set noborder
  1509.          show border
  1510. 3 boxwidth
  1511. ?set boxwidth
  1512. ?show boxwidth
  1513. ?boxwidth
  1514.  The `set boxwidth` command is used to set the default width of
  1515.  boxes in the `boxes` and `boxerrorbars` styles.
  1516.  
  1517.  If a data file is plotted without the width being specified in the
  1518.  fifth column, or a function is plotted, the width of each box is
  1519.  set by the `set boxwidth` command.  If a width is given after the
  1520.  `set boxwidth` command then this is used as the width.  Otherwise
  1521.  the width of each box will be calculated automatically so that
  1522.  it touches the adjacent boxes.
  1523.  
  1524.  Syntax:
  1525.           set boxwidth {<width>}
  1526.           show boxwidth
  1527.  
  1528.  To set the box width to automatic use the command
  1529.           set boxwidth
  1530. 3 clabel
  1531. ?set clabel
  1532. ?set noclabel
  1533. ?show clabel
  1534. ?clabel
  1535. ?noclabel
  1536.  GNUPLOT will vary the linetype used for each contour level
  1537.  when clabel is set. When this option on (the default), a
  1538.  legend labels each linestyle with the z level it represents.
  1539.  
  1540.  Syntax:
  1541.          set clabel
  1542.          set noclabel
  1543.          show clabel
  1544. 3 clip
  1545. ?set clip
  1546. ?set noclip
  1547. ?show clip
  1548. ?clip
  1549. ?noclip
  1550.  GNUPLOT can clip data points and lines that are near the boundaries
  1551.  of a plot.
  1552.  
  1553.  Syntax:
  1554.          set clip <clip-type>
  1555.          set noclip <clip-type>
  1556.          show clip
  1557.  
  1558.  Three clip types are supported by GNUPLOT: `points`, `one`, and `two`.
  1559.  One, two, or all three clip types may be active for a single plot.
  1560.  
  1561.  The `points` clip type forces GNUPLOT to clip (actually, not plot at
  1562.  all) data points that fall within but too close to the boundaries
  1563.  (this is so the large symbols used for points will not extend outside
  1564.  the boundary lines). Without clipping points near the boundaries may
  1565.  look bad; try adjusting the x and y ranges.
  1566.  
  1567.  Setting the `one` clip type causes GNUPLOT to plot the line segments
  1568.  which have only one of the two endpoints within the plotting region.
  1569.  Only the in-range portion of the line is drawn.  The alternative is to
  1570.  not draw any portion of the line segment.
  1571.  
  1572.  Some lines may have both endpoints out of range, but pass through the
  1573.  plotting area. Setting the `two` clip-type allows the visible portion
  1574.  of these lines to be drawn.
  1575.  
  1576.  In no case is a line drawn outside the plotting area.
  1577.  
  1578.  The defaults are `noclip points`, `clip one`, and `noclip two`.
  1579.  
  1580.  To check the state of all forms of clipping, use
  1581.          show clip
  1582.  
  1583.  For backward compatibility with older versions, the following forms
  1584.  are also permitted.
  1585.         set clip
  1586.         set noclip
  1587.  `set clip` is synonymous with `set clip points`. `set noclip` turns
  1588.  off all three types of clipping.
  1589. 3 cntrparam
  1590. ?set cntrparam
  1591. ?show cntrparam
  1592. ?cntrparam
  1593.  Sets the different parameters for the contouring plot (see also `contour`).
  1594.  
  1595.  Syntax:
  1596.   set cntrparam { { linear | cubicspline | bspline } |
  1597.      points <n> |
  1598.      order <n>  |
  1599.      levels { [ auto ] <n> |
  1600.      discrete <z1>,<z2>, ... |
  1601.      incremental {<start>, <incr>{, <end>} } }
  1602.  
  1603.  Examples:
  1604.      set cntrparam bspline
  1605.      set cntrparam points 7
  1606.      set cntrparam order 10
  1607.      set cntrparam levels auto 5                   # 5 automatic levels
  1608.      set cntrparam levels discrete .1,1/exp(1),.9  # 3 discrete at .1,.37 and .9
  1609.      set cntrparam levels incremental  0,.1,.4
  1610.      # 5 incremental levels at 0, .1, .2, .3 and .4
  1611.      set cntrparam levels 10
  1612.      # sets n = 10 retaining current setting of auto, discr. and
  1613.      # increment's start and increment value, while changing end
  1614.      set cntrparam levels incremental 100,50
  1615.      # set start = 100 and increment = 50, retaining n levels
  1616.  
  1617.  This command controls the way contours are plotted. <n> should be an
  1618.  integral constant expression and <z1>, <z2> any constant expressions.
  1619.  The parameters are:
  1620.  
  1621.  `linear`, `cubicspline`, `bspline` - Controls type of approximation or
  1622.  interpolation. If `linear`, then the contours are drawn piecewise
  1623.  linear, as extracted from the surface directly. If `cubicspline`, then
  1624.  piecewise linear contours are interpolated to form a somewhat smoother
  1625.  contours, but which may undulate. The third option is the uniform
  1626.  `bspline`, which only approximates the piecewise linear data but is
  1627.  guaranteed to be smoother.
  1628.  
  1629.  `points` - Eventually all drawings are done with piecewise linear
  1630.  strokes.  This number controls the number of points used to
  1631.  approximate a curve.  Relevant for `cubicspline` and `bspline` modes
  1632.  only.
  1633.  
  1634.  `order`  - Order of the bspline approximation to be used. The bigger this
  1635.  order is, the smoother the resulting contour.  (Of course, higher order
  1636.  bspline curves will move further away from the original piecewise linear
  1637.  data.)  This option is relevant for `bspline` mode only. Allowed values are
  1638.  integers in the range from 2 (linear) to 10.
  1639.  
  1640.  `levels` - Number of contour levels, 'n'.  Selection of the levels is
  1641.  controlled by 'auto' (default), 'discrete', and 'incremental'. For 'auto',
  1642.  if the surface is bounded by zmin and zmax then contours will be
  1643.  generated from zmin+dz to zmax-dz in steps of size dz, where
  1644.  dz = (zmax - zmin) / (levels + 1).  For 'discrete', contours will be
  1645.  generated at z = z1, z2 ... as specified.  The number of discrete levels
  1646.  is limited to MAX_DISCRETE_LEVELS, defined in plot.h to be 30.  If
  1647.  'incremental', contours are generated at <n> values of z beginning at
  1648.  <start> and increasing by <increment>.
  1649. 3 contour
  1650. ?set contour
  1651. ?show contour
  1652. ?contour
  1653.  Enable contour drawing for surfaces. This option is available for `splot`
  1654.  only.
  1655.  
  1656.  Syntax:
  1657.          set contour { base | surface | both }
  1658.          set nocontour
  1659.  
  1660.  If no option is provided to `set contour`, the default is `base`.
  1661.  The three options specify where to draw the contours: `base` draws
  1662.  the contours on the grid base where the x/ytics are placed, `surface`
  1663.  draws the contours on the surfaces themselves, and `both` draws the
  1664.  contours on both the base and the surface.
  1665.  
  1666.  See also `set cntrparam` for the parameters that affect the drawing of
  1667.  contours.
  1668. 3 data style
  1669. ?set data style
  1670. ?show data style
  1671. ?data style
  1672.  The `set data style` command changes the default plotting style
  1673.  for data plots.
  1674.  
  1675.  Syntax:
  1676.          set data style
  1677.          show data style
  1678.          set data style <style-choice>
  1679.  
  1680.  In the first case, `set data style` returns the possible style
  1681.  choices:  `lines`, `points`, `linespoints`, `dots`, `steps`,
  1682.  `impulses`, `errorbars`, `boxes` or `boxerrorbars`.  `show data style`
  1683.  shows the current default plotting style for data.  `set data style dots`
  1684.  would actually  change the default plotting style.  See also `plot`.
  1685. 3 dgrid3d
  1686. ?set dgrid3d
  1687. ?show dgrid3d
  1688. ?dgrid3d
  1689.  Enables and sets the different parameters for non grid to grid data mapping.
  1690.  
  1691.  Syntax:
  1692.          set dgrid3d {,{<row_size>}{,{<col_size>}{,<norm>}}}
  1693.          set nodgrid3d
  1694.  
  1695.  Examples:
  1696.         set dgrid3d 10,10,2
  1697.         set dgrid3d ,,4
  1698.  
  1699.  The first selects a grid of size 10 by 10 to be constructed and the use
  1700.  of L2 norm in the distance computation. The second only modifies the norm
  1701.  to be used to L4.
  1702.  
  1703.  By default this option is disabled. When enabled, 3d data read from a file
  1704.  is always treaded as a scattered data set. A grid with dimensions derived
  1705.  from a bounding box of the scattered data and size as specified by the
  1706.  row/col_size above is created for plotting and contouring. The grid is
  1707.  equally spaced in x and y while the z value is computed as a weighted
  1708.  average of the scattered points distance to the grid points. The closer
  1709.  the scatter points to a grid point are the more effect they have on that
  1710.  grid point. The third, norm, parameter controls the "meaning" of the
  1711.  distance, by specifying the distance norm. This distance computation
  1712.  is optimized for powers of 2 norms, specifically 1, 2, 4, 8, and 16, but
  1713.  any nonnegative integer can be used.
  1714.  
  1715.  This dgrid3d option is a simple low pass filter that converts scattered data
  1716.  to a grid data set. More sophisticated approaches to this problem exists and
  1717.  should be used as a preprocess to and outside gnuplot if this simple solution
  1718.  is found inadequate.
  1719.  
  1720. 3 dummy
  1721. ?set dummy
  1722. ?show dummy
  1723. ?dummy
  1724.  By default, GNUPLOT assumes that the independent variable for the
  1725.  `plot` command is x, and the independent variables for the `splot`
  1726.  command are x and y. They are called the dummy variables because it
  1727.  is just a notation to indicate the independent variables.
  1728.  The `set dummy` command changes these default dummy variable names.
  1729.  For example, it may be more convenient to call the dummy variable t
  1730.  when plotting time functions:
  1731.  
  1732.          set dummy t
  1733.          plot sin(t), cos(t)
  1734.  
  1735.  Syntax:
  1736.          set dummy <dummy-var>{,<dummy-var>}
  1737.          show dummy
  1738.  
  1739.  Examples:
  1740.          set dummy u,v
  1741.          set dummy ,s
  1742.  
  1743.  to set both dummy variables to u and v or set only the second
  1744.  variable to s.
  1745.  
  1746.  The `set parametric` command also changes the dummy variables (to t
  1747.  for `plot` and u,v for `splot`s).
  1748.  
  1749. 3 format
  1750. ?set format
  1751. ?show format
  1752. ?format
  1753.  The format of the tic-mark labels can be set with the `set format`
  1754.  command. The default format for both axes is "%g", but other formats
  1755.  such as "%.2f" or "%3.0fm" are often desirable. Anything accepted by
  1756.  printf when given a double precision number, and then accepted by the
  1757.  terminal, will work. In particular, the formats f, e, and g will work,
  1758.  and the d, o, x, c, s, and u formats will not work.
  1759.  
  1760.  Syntax:
  1761.          set format {<axes>} {"<format-string>"}
  1762.          show format
  1763.  
  1764.  where <axes> is either `x`, `y`, `z`, `xy`, or nothing (which is the
  1765.  same as `xy`). The length of the string representing a ticmark (after
  1766.  formatting with printf) is restricted to 100 characters.  If the
  1767.  format string is omitted, the format will be returned to the default
  1768.  "%g". For LaTeX users, the format "$%g$" is often desirable.  If the
  1769.  empty string "" is used, no label will be plotted with each tic,
  1770.  though the tic mark will still be plotted. To eliminate all tic marks,
  1771.  use `set noxtics` or `set noytics`.
  1772.  
  1773.  See also `set xtics` and `set ytics` for more control over tic labels.
  1774. 3 function style
  1775. ?set function style
  1776. ?show function style
  1777. ?function style
  1778.  The `set function style` command changes the default plotting style
  1779.  for functions.
  1780.  
  1781.  Syntax:
  1782.          set function style
  1783.          show function style
  1784.          set function style <style-choice>
  1785.  
  1786.  In the first case, `set function style` returns the possible style
  1787.  choices:  `lines`, `points`, `linespoints`, `dots`, `steps`,
  1788.  `impulses`, `errorbars`, `boxes`, or `boxerrorbars`.
  1789.  `show function style` shows the current default plotting style for
  1790.  functions.  `set function style linespoints` would actually change
  1791.  the default plotting style.   See also `plot`.
  1792. 3 functions
  1793. ?show functions
  1794.  The `show functions` command lists all user-defined functions and
  1795.  their definitions.
  1796.  
  1797.  Syntax:
  1798.          show functions
  1799. 3 grid
  1800. ?set grid
  1801. ?show grid
  1802. ?grid
  1803.  The optional `set grid` draws a grid at the tic marks with the axis
  1804.  linetype.
  1805.  
  1806.  Syntax:
  1807.          set grid
  1808.          set nogrid
  1809.          show grid
  1810. 3 hidden3d
  1811. ?set hidden3d
  1812. ?show hidden3d
  1813.  The `set hidden3d` command enables hidden line removal for explicit
  1814.  surface plotting (see `splot`).
  1815.  Hidden line removal may be used for both explicit functions and for
  1816.  explicit data.  It now works for parametric surfaces as well.
  1817.  
  1818.  When this flag is set both the surface hidden portion and possibly
  1819.  its hidden contours (see `set contour`) as well as the hidden grid will be
  1820.  removed. Labels and arrows are always visible and are unaffected by this
  1821.  command.
  1822.  
  1823.  Each surface has its hidden parts removed with respect to itself and to
  1824.  other surfaces, if more than one surface is plotted. This mode is
  1825.  meaningful when surfaces are plotted using line style drawing only.
  1826.  
  1827.  Syntax:
  1828.          set hidden3d
  1829.          set nohidden3d
  1830.          show hidden3d
  1831. 3 isosamples
  1832. ?set isosamples
  1833. ?show isosamples
  1834. ?isosamples
  1835.  An isoline is a curve parametrized by one of the surface parameters
  1836.  while the other surface parameter is fixed. Isolines are a simple
  1837.  means to display a surface. By fixing the u parameter of surface
  1838.  s(u,v), the iso-u lines of the form c(v) = s(u0,v) are produced, and
  1839.  by fixing the v parameter, the iso-v lines of the form c(u) = s(u,v0)
  1840.  are produced.
  1841.  
  1842.  The isoline density of surfaces may be changed by the `set isosamples`
  1843.  command. By default, sampling is set to 10 isolines per u or v axis.
  1844.  A higher sampling rate will produce more accurate plots, but will take
  1845.  longer. This parameter has no effect on data file plotting.
  1846.  
  1847.  Syntax:
  1848.          set isosamples <iso_1> {,<iso_2>}
  1849.          show isosamples
  1850.  
  1851.  Each surface plot will have <iso_1> iso-u lines and <iso_2> iso-v lines.
  1852.  If you only specify <iso_1>, <iso_2> will be set to the same value as
  1853.  <iso_1>.
  1854.  
  1855.  When a surface plot is being done without the removal of hidden
  1856.  lines, `set samples` also has an effect on the number of points being
  1857.  evaluated. See `set samples`.
  1858. 3 key
  1859. ?set key
  1860. ?show key
  1861. ?key
  1862.  The `set key` enables a key describing curves on a plot.  By default
  1863.  the key is placed in the upper right corner of the plot.
  1864.  
  1865.  Syntax:
  1866.          set key
  1867.          set key <x>,<y>{,<z>}
  1868.          set nokey
  1869.          show key
  1870.  
  1871.  The coordinates <x>, <y> (and <z> for `splot`s) specify the location
  1872.  of the key on the plot. The key is drawn as a sequence of lines, with
  1873.  one plot described on each line. On the right hand side of each line
  1874.  is a representation that attempts to mimic the way the curve is
  1875.  plotted.  On the left side of each line is the text description,
  1876.  obtained from the `plot` command. See `plot title` to change this
  1877.  description. The lines are vertically arranged so an imaginary
  1878.  straight line divides the left- and right-hand sides of the key. It is
  1879.  the coordinates of this line that are specified with the `set key`
  1880.  command. In a `plot`, only the x and y coordinates are used to specify
  1881.  the line position.  For a `splot`, x, y and z are all being used as a
  1882.  3-d location mapped using the same mapping as the plot itself to form
  1883.  the required 2-d screen position of the imaginary line.
  1884.  
  1885.  Some or all of the key may be outside of the plot boundary, although
  1886.  this may interfere with other labels and may cause an error on some
  1887.  devices.
  1888.  
  1889.  Examples:
  1890.  
  1891.  This places the key at the default location:
  1892.          set key
  1893.  This disables the key:
  1894.          set nokey
  1895.  This places a key at coordinates 2,3.5,2
  1896.          set key 2,3.5,2
  1897. 3 label
  1898. ?set label
  1899. ?set nolabel
  1900. ?show label
  1901. ?label
  1902. ?nolabel
  1903.  Arbitrary labels can be placed on the plot using the `set label`
  1904.  command.  If the z coordinate is given on a `plot` it is ignored; if
  1905.  it is missing on a `splot` it is assumed to be 0.
  1906.  
  1907.  Syntax:
  1908.  
  1909.           set label {<tag>} {"<label_text>"} {at <x>,<y>{,<z>}}
  1910.                             {<justification>}
  1911.           set nolabel {<tag>}
  1912.           show label
  1913.  
  1914.  
  1915.  The text defaults to "", and the position to 0,0,0.  The <x>, <y>, and
  1916.  <z> values are in the graph's coordinate system.  The tag is an
  1917.  integer that is used to identify the label. If no <tag> is given, the
  1918.  lowest unused tag value is assigned automatically. The tag can be used
  1919.  to delete or change a specific label. To change any attribute of an
  1920.  existing label, use the `set label` command with the appropriate tag,
  1921.  and specify the parts of the label to be changed.
  1922.  
  1923.  By default, the text is placed flush left against the point x,y,z.
  1924.  To adjust the way the label is positioned with respect to the point
  1925.  x,y,z, add the parameter <justification>, which may be `left`, `right`
  1926.  or `center`, indicating that the point is to be at the left, right or
  1927.  center of the text. Labels outside the plotted boundaries are
  1928.  permitted but may interfere with axes labels or other text.
  1929.  
  1930.  Examples:
  1931.  
  1932.  To set a label at (1,2) to "y=x" use:
  1933.           set label "y=x" at 1,2
  1934.  To set a label "y=x^2" with the right of the text at (2,3,4), and tag
  1935.  the label number 3, use:
  1936.           set label 3 "y=x^2" at 2,3,4 right
  1937.  To change the preceding label to center justification, use:
  1938.           set label 3 center
  1939.  To delete label number 2 use:
  1940.           set nolabel 2
  1941.  To delete all labels use:
  1942.           set nolabel
  1943.  To show all labels (in tag order) use:
  1944.           show label
  1945.  
  1946.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  1947.  a newline.)
  1948. 3 logscale
  1949. ?set logscale
  1950. ?set nologscale
  1951. ?show logscale
  1952. ?logscale
  1953. ?nologscale
  1954.  Log scaling may be set on the x, y, and z axes.
  1955.  
  1956.  Syntax:
  1957.          set logscale <axes> <base>
  1958.          set nologscale <axes>
  1959.          show logscale
  1960.  
  1961.  where <axes> may be any combinations of `x`, `y`, and `z`, in any
  1962.  order, and where <base> is the base of the log scaling.  If <base>
  1963.  is not given, then 10 is assumed.  If <axes> is not given then all
  1964.  three axes are assumed.  The command `set logscale` turns on log
  1965.  scaling on the specified axes, while `set nologscale` turns off
  1966.  log scaling.
  1967.  
  1968.  Examples:
  1969.  
  1970.  To enable log scaling in both x and z axes:
  1971.         set logscale xz
  1972.  To enable scaling log base 2 of the y axis:
  1973.         set logscale y 2
  1974.  To disable z axis log scaling:
  1975.         set nologscale z
  1976. 3 mapping
  1977. ?set mapping
  1978. ?show mapping
  1979. ?mapping
  1980.  
  1981.  Syntax:
  1982.          set mapping { cartesian | spherical | cylindrical }
  1983.  
  1984.  Data for `splot`s are usually in regular Euclidean space and are
  1985.  provided in Cartesian coordinates. Such 3-d data require three
  1986.  coordinates (x, y and z) or one coordinate (only z) in each line in
  1987.  the data file.  In order to be able to use spherical or cylindrical
  1988.  coordinate systems, use the `set mapping` command. In both cases two
  1989.  coordinates are expected in each line of the data. For a spherical
  1990.  coordinate system, these are theta and phi (in units as specified by
  1991.  `set angles`) and the mapping is:
  1992.  
  1993.          x = cos( theta ) * cos( phi )
  1994.          y = sin( theta ) * cos( phi )
  1995.          z = sin( phi )
  1996.  
  1997.  For a cylindrical coordinate system, the mapping uses two variables,
  1998.  theta (in units as specified by `set angles`) and z:
  1999.  
  2000.          x = cos( theta )
  2001.          y = sin( theta )
  2002.          z = z
  2003.  
  2004.  Again, note that mapping will affect data file `splot`s only.
  2005. 3 offsets
  2006. ?set offsets
  2007. ?show offsets
  2008. ?offsets
  2009.  The amount of the graph that the plot takes up may be controlled to
  2010.  some extent with the `set offsets` command. This command takes four
  2011.  offset arguments: <left>, <right>, <top> and <bottom>. By default,
  2012.  each offset is 0. Each offset may be a constant or an expression. Left
  2013.  and right offsets are given in units of the x axis, while top and
  2014.  bottom offsets are given in units of the y axis. The plot of sin(x),
  2015.  displayed with offsets of 0, 0, 2, 2 will take up 1/3 of the
  2016.  displayed y axis. Offsets are particularly useful with polar
  2017.  coordinates as a means of compensating for aspect ratio distortion.
  2018.  Offsets are ignored in `splot`s.
  2019.  
  2020.  Syntax:
  2021.          set offsets <left>, <right>, <top>, <bottom>
  2022.          show offsets
  2023. 3 output
  2024. ?set output
  2025. ?show output
  2026. ?output
  2027.  By default, plots are displayed to the standard output. The
  2028.  `set output` command redirects the display to the specified file
  2029.  or device.
  2030.  
  2031.  Syntax:
  2032.          set output {"<filename>"}
  2033.          show output
  2034.  
  2035.  The filename must be enclosed in quotes. If the filename is
  2036.  omitted, output will be sent to the standard output.
  2037.  
  2038.  On machines with popen functions (UNIX), output can be piped
  2039.  through a shell command if the first letter of the filename
  2040.  is '|'.  For instance,
  2041.  
  2042.  Syntax:
  2043.          set output "|lpr -Plaser filename"
  2044.          set output "|lp -dlaser filename"
  2045.  
  2046.  (On MSDOS machines, set output "prn" will direct the output
  2047.  to the default printer.)
  2048.  
  2049. 3 parametric
  2050. ?set parametric
  2051. ?set noparametric
  2052. ?show parametric
  2053. ?parametric
  2054. ?noparametric
  2055.  The `set parametric` command changes the meaning of `plot` (`splot`)
  2056.  from normal functions to parametric functions. The command
  2057.  `set noparametric` changes the plotting style back to normal,
  2058.  single-valued expression plotting.
  2059.  
  2060.  In 2-d plotting, a parametric function is determined by a pair
  2061.  of parametric functions operating on a parameter. An example
  2062.  of a 2-d parametric function would be plot sin(t),cos(t) (which
  2063.  defines a circle).
  2064.  
  2065.  For 3-d plotting, the surface is described as x=f(u,v), y=g(u,v),
  2066.  z=h(u,v). Therefore a triplet of functions are required. An example of
  2067.  3-d parametric function would be cos(u)*cos(v),cos(u)*sin(v),sin(u)
  2068.  (which defines a sphere). It takes three parametric function
  2069.  specifications in terms of the parametric dummy arguments to describe
  2070.  a single graph.
  2071.  
  2072.  The total set of possible plots is a superset of the simple f(x)
  2073.  style plots, since the two (three) functions can describe the
  2074.  x and y (and z) values to be computed separately. In fact,
  2075.  plots of the type t,f(t) (u,v,f(u,v)) are equivalent to those
  2076.  produced with f(x) when the x values are computed using the
  2077.  identity function as the first function.
  2078.  
  2079.  Note that the order the parametric functions are specified is
  2080.  xfunction, yfunction (and zfunction) and that each operates over the
  2081.  common parametric domain.
  2082.  
  2083.  Also, the `set parametric` function implies a new range of values.
  2084.  Whereas the normal f(x) and f(x,y) style plotting assume an xrange
  2085.  and yrange (and zrange), the parametric mode additionally specifies a
  2086.  trange, urange, and vrange. These ranges may be set
  2087.  directly with `set trange`, `set urange` and `set vrange`, or by
  2088.  specifying the range on the `plot` or `splot` commands. Currently
  2089.  the default range for these parametric variables is [-5:5].
  2090.  Setting the ranges to something more meaningful is expected.
  2091. 3 polar
  2092. ?set polar
  2093. ?set nopolar
  2094. ?show polar
  2095. ?polar
  2096. ?nopolar
  2097.  The `set polar` command changes the meaning of the plot from
  2098.  rectangular coordinates to polar coordinates. In polar coordinates,
  2099.  the dummy variable (x) is an angle. The range of this angle is changed
  2100.  from whatever it was to [0:2*pi], or, if degree unit has been selected,
  2101.  to [0:360] (see `set angles`).
  2102.  
  2103.  The command `set nopolar` changes the meaning of the plot back to the
  2104.  default rectangular coordinate system. The range of x is changed from
  2105.  whatever it was to [-10:10].
  2106.  
  2107.  The `set polar` command is not supported for `splot`s.  See the
  2108.  `set mapping` command for similar functionality for `splot`s.
  2109.  
  2110.  While in polar coordinates the meaning of an expression in x is really
  2111.  r = f(x), where x is an angle of rotation. The xrange controls the
  2112.  domain (the angle) of the function, and the yrange controls the range
  2113.  (the radius). The plot is plotted in a rectangular box, and the x and
  2114.  y axes are both in units of the radius. Thus, the yrange controls both
  2115.  dimensions of the plot output. The tics and units are written along
  2116.  the axes rather than at the left and bottom. These unit are offset by
  2117.  <rmin> specified by the `rrange` (See `set rrange`). It is not
  2118.  possible to specify different output dimensions in the x or y
  2119.  directions. The yrange can be used to shift the plot diagonally to
  2120.  display only the first or third quadrants.
  2121.  
  2122.  Syntax:
  2123.          set polar
  2124.          set nopolar
  2125.          show polar
  2126.  Example:
  2127.          set polar
  2128.          plot x*sin(x)
  2129.          plot [-2*pi:2*pi] [-3:3] x*sin(x)
  2130.  The first plot uses the default polar angular domain of 0 to 2*pi.
  2131.  The radius (and the size of the plot) is scaled automatically. The
  2132.  second plot expands the domain, and restricts the range of the radius
  2133.  (and the size of the plot) to [-3:3].
  2134. 3 rrange
  2135. ?set rrange
  2136. ?show rrange
  2137. ?rrange
  2138.  The `set rrange` command sets the radial range used to compute x and y
  2139.  values when in polar mode. If not in polar mode (see `set polar`) then
  2140.  this range is not used. Use of this command offsets the polar
  2141.  singularity to the <rmin> value and shifts the units on the axes tic
  2142.  marks. For instance, `set rrange [-40:40]` would set the origin to -40
  2143.  and would plot values of radial values between -40 to 40. Thus, if
  2144.  360 degrees of data were plotted, then the plot would extend 80 units
  2145.  in radially from the origin.  To view the entire plot,  a
  2146.  `set yrange [-80:80]` command would create a square viewport with
  2147.  a circular plot tangent at the axes.  Because `xrange` is used
  2148.  specify the angular extent, only a square viewport can be specified
  2149.  by `yrange`.  For instance, `set yrange [0:80]` would display the
  2150.  first quadrant and `set yrange [-80:0]` would display the third
  2151.  quadrant.  Any square viewport of any size can be specified but it
  2152.  is constrained to be centered on a 45 degree line.
  2153.  
  2154.  This range may also be specified on the `plot` command line when in
  2155.  polar mode.
  2156.  
  2157.  Syntax:
  2158.          set rrange [{<rmin> : <rmax>}]
  2159.  
  2160.  where <rmin> and <rmax> terms are constants or expressions.
  2161.  
  2162.  Both the <rmin> and <rmax> terms are optional. Anything omitted will
  2163.  not be changed, so
  2164.          set rrange [:10]
  2165.  changes rmax to 10 without affecting rmin.
  2166. 3 samples
  2167. ?set samples
  2168. ?show samples
  2169. ?samples
  2170.  The sampling rate of functions may be changed by the `set samples`
  2171.  command. By default, sampling is set to 100 points. A higher sampling
  2172.  rate will produce more accurate plots, but will take longer. This
  2173.  parameter no longer has any effect on data-file plotting.
  2174.  
  2175.  Syntax:
  2176.          set samples <samples_1> {,<samples_2>}
  2177.          show samples
  2178.  
  2179.  When a 2-d plot is being done, only the value of <samples_1> is
  2180.  relevant.
  2181.  
  2182.  When a surface plot is being done without the removal of hidden
  2183.  lines, the value of samples specifies the number of samples that are
  2184.  evaluated per iso line. Each iso-v line will have <sample_1> samples
  2185.  and each iso-u line will have <sample_2> samples. If you only specify
  2186.  <samples_1>, <samples_2> will be set to the same value as <samples_1>.
  2187.  See also `set isosamples`.
  2188. 3 size
  2189. ?set size
  2190. ?show size
  2191. ?size
  2192.  The `set size` command scales the displayed size of the plot.  On some
  2193.  terminals, changing the size of the plot will result in text being
  2194.  misplaced. Increasing the size of the plot may produce strange
  2195.  results. Decreasing is safer.
  2196.  
  2197.  Syntax:
  2198.  
  2199.          set size {<xscale>,<yscale>}
  2200.          show size
  2201.  
  2202.  The <xscale> and <yscale> values are the scaling factors for the size.
  2203.  The defaults (1,1) are selected if the scaling factors are omitted.
  2204.  
  2205.  Examples:
  2206.  
  2207.  To set the size to normal size use:
  2208.          set size
  2209.  To make the plot half size use:
  2210.          set size 0.5,0.5
  2211.  To make a landscape plot have a 1:1 aspect ratio in polar mode use:
  2212.          set size 0.721,1.0
  2213.  To show the size use:
  2214.          show size
  2215.  
  2216.  For the LaTeX and Fig terminals the default size (scale factor 1,1)
  2217.  is 5 inches wide by 3 inches high. The big Fig terminal (`bfig`) is 7
  2218.  inches wide by 5 inches high. The postscript default is landscape mode
  2219.  10 inches wide and 7 inches high.
  2220.  Note that the size of the plot includes the space used by the labels;
  2221.  the plotting area itself is smaller.
  2222. 3 style
  2223. ?set style
  2224. ?show style
  2225. ?style
  2226. ?lines
  2227. ?points
  2228. ?linespoints
  2229. ?impulses
  2230. ?dots
  2231. ?steps
  2232. ?errorbars
  2233. ?boxes
  2234. ?boxerrorbars
  2235. ?bargraph
  2236.  Plots may be displayed in one of eight styles: `lines`, `points`,
  2237.  `linespoints`, `impulses`, `dots`, `steps`, `errorbars`, `boxes`, or
  2238.  `boxerrorbars`.  The `lines` style connects adjacent points with lines.
  2239.  The `points` style displays a small symbol at each point.
  2240.  The `linespoints` style does both `lines` and `points`.
  2241.  The `impulses` style displays a vertical line from the x axis
  2242.  (or from the grid base for `splot`) to each point. The `dots` style
  2243.  plots a tiny dot at each point; this is useful for
  2244.  scatter plots with many points.
  2245.  
  2246.  The `errorbars` style is only relevant to 2-d data file plotting. It
  2247.  is treated like `points` for `splot`s and function `plot`s. For data
  2248.  `plot`s, `errorbars` is like `points`, except that a vertical error
  2249.  bar is also drawn: for each point (x,y), a line is drawn from
  2250.  (x,ylow) to (x,yhigh). A tic mark is placed at the ends of the error
  2251.  bar. The ylow and yhigh values are read from the data file's columns,
  2252.  as specified with the `using` option to plot. See `plot errorbars` for
  2253.  more information.
  2254.  
  2255.  The `boxes` style is only relevant to 2-d plotting.  It draws
  2256.  a box centred about the given x coordinate from the yaxis to the given
  2257.  y coordinate.   The width of the box is obtained in one of three
  2258.  ways.  If a data file has a fifth column, this will be used to set
  2259.  the width of the box.  Otherwise, if a width has been set using the
  2260.  `set boxwidth` command, this will be used.  Otherwise the width of each
  2261.  box will be calculated automatically so that it touches the adjacent
  2262.  boxes.  Another style called `boxerrorbars` is also available and is
  2263.  only  relevant to 2-d data file plotting.  This style is a combination
  2264.  of the `boxes` and `errorbars` styles.
  2265.  
  2266.  The `steps` style is only relevant to 2-d plotting.  This style
  2267.  connects consecutive points with two line segments: the first
  2268.  from (x1,y1) to (x2,y1) and the second from (x2,y1) to (x2,y2).
  2269.  
  2270.  Default styles are chosen with the `set function style` and
  2271.  `set data style` commands. See `plot style` for information about
  2272.  how to override the default plotting style for individual functions.
  2273.  
  2274.  Syntax:
  2275.          set function style <style>
  2276.          set data style <style>
  2277.          show function style
  2278.          show data style
  2279.  
  2280.  where <style> is `lines`, `points`, `linespoints`, `impulses`,
  2281.  `dots`, `steps`, `errorbars`, `boxes`, or `boxerrorbars`.
  2282. 3 surface
  2283. ?set surface
  2284. ?set nosurface
  2285. ?show surface
  2286. ?surface
  2287.  `set surface` controls the display of surfaces. It is useful if
  2288.  contours are to be displayed by themselves. Whenever `set nosurface`
  2289.  is issued, no surface isolines/mesh will be drawn. See also
  2290.  `set contour`.
  2291.  
  2292.  Syntax:
  2293.          set surface
  2294.          set nosurface
  2295.          show surface
  2296. 3 terminal
  2297. ?set terminal
  2298. ?show terminal
  2299. ?terminal
  2300.  GNUPLOT supports many different graphics devices. Use the
  2301.  `set terminal` command to select the type of device for which
  2302.  GNUPLOT will produce output.
  2303.  
  2304.  Syntax:
  2305.          set terminal {<terminal-type>}
  2306.          show terminal
  2307.  
  2308.  If <terminal-type> is omitted, GNUPLOT will list the available
  2309.  terminal types. <terminal-type> may be abbreviated.
  2310.  
  2311.  Use `set output` to redirect this output to a file or device.
  2312.  
  2313.  Several terminals have additional options. For example, see `dumb`,
  2314.  `iris4d`, `hpljii` or `postscript`.
  2315. 4 aifm
  2316. ?set terminal aifm
  2317. ?aifm
  2318.  Several options may be set in the Adobe Illustrator 3.0 driver.
  2319.  
  2320.  Syntax:
  2321.          set terminal aifm {<color>}
  2322.                                  {"<fontname>"} {<fontsize>}
  2323.  
  2324.  Selecting default sets all options to their default values.
  2325.  <color> is either `color` or `monochrome`.
  2326.  "<fontname>" is the name of a valid PostScript font.
  2327.  <fontsize> is the size of the font in PostScript points, before
  2328.  scaling by the `set size` command.
  2329.  Defaults are `monochrome`, "Helvetica", and 14pt.
  2330.  
  2331.  Also, since AI does not really support multiple pages, multiple
  2332.  graphs will be output directly on one another.  However, each graph
  2333.  will be grouped individually, making it easy to separate them inside
  2334.  AI (just pick them up and move them).
  2335.  
  2336.  Examples:
  2337.  
  2338.          set term aifm
  2339.          set term aifm 22
  2340.          set size 0.7,1.4
  2341.          set term aifm color "Times-Roman" 14
  2342.  
  2343. 4 atari ST
  2344. ?set terminal atari
  2345. ?atari
  2346.  The `atari` terminal has an option to set the character size and the
  2347.  screen colors.  The driver expects a space separated list the char size
  2348.  and maximal 16 3 digit hex numbers where each digit represents RED, GREEN
  2349.  and BLUE (in that order).  The range of 0-15 is scaled to whatever color
  2350.  range the screen actually has.  On a normal ST screen, odd and even
  2351.  intensities are the same.
  2352.  
  2353.  Examples:
  2354.  
  2355.         set terminal atari 4 # (use small (6x6) font)
  2356.         set terminal atari 6 0 # (set monochrome screen to white on black)
  2357.         set terminal atari 13 0 fff f00 f0 f ff f0f ff0
  2358.         # (set first eight colors to black, white, green, blue, cyan, \
  2359.           purple, and yellow and use large font (8x16).)
  2360.  
  2361.  Additionally, if an environment variable GNUCOLORS exists, its
  2362.  contents are interpreted as an options string, but an explicit terminal
  2363.  option takes precedence.
  2364.  
  2365. 4 dumb
  2366. ?set terminal dumb
  2367. ?dumb
  2368.  The dumb terminal driver has an optional size specification.
  2369.  
  2370.  Syntax:
  2371.          set terminal dumb {<xsize> <ysize>}
  2372.  
  2373.  where <xsize> and <ysize> set the size of the dumb terminals. Default
  2374.  is 79 by 24.
  2375.  
  2376.  Examples:
  2377.          set term dumb
  2378.          set term dumb 79 49 #(VGA screen - why would anyone want to do that!?)
  2379. 4 epson
  2380. ?set terminal epson
  2381. ?set terminal epson180
  2382. ?set terminal epson60
  2383. ?set terminal starc
  2384. ?set terminal tandy60
  2385. ?epson
  2386.  
  2387.  This set of drivers support Epson printers and derivatives.   See also
  2388.  the NEC driver.  `epson` is a generic 9 wire printer with a resolution
  2389.  of 512x384. `starc` is a Star Color printer with the same resolution.
  2390.  `epson180` and `epson60` are 180 dpi and 60 dpi drivers for newer
  2391.  24 wire printers.  This also includes bubble jet printers.  Their
  2392.  resolutions are 1260x1080 and 480x360, respectively.  The `tandy60`
  2393.  is identical to the `epson60` driver with one additional escape
  2394.  sequence to start IBM mode.  With all of these drivers, a binary
  2395.  copy is required on a PC to print.  Do not use `print`.
  2396.  
  2397.      copy file /b lpt1:
  2398.  
  2399.  
  2400. 4 gpic
  2401. ?set terminal gpic
  2402. ?gpic
  2403.  
  2404.  This driver is only known to work the Free Software Foundation
  2405.  gpic/groff package.  Modification for the Document Workbench
  2406.  pic/troff package would be appreciated.  FSF gpic can also
  2407.  produce TeX output.
  2408.  
  2409.  A simple graph can be formatted using
  2410.  
  2411.       groff -p -mpic -Tps file.pic > file.ps.
  2412.  
  2413.  The output from pic can be pipe-lined into eqn, so it is possible to put
  2414.  complex functions in a graph with the set label and set {x/y}label commands.
  2415.  For instance,
  2416.  
  2417.     set ylab '@space 0 int from 0 to x alpha ( t ) roman d t@'
  2418.  
  2419.  Will label the y-axis with a nice integral if formatted with the
  2420.  command:
  2421.  
  2422.     gpic filename.pic | geqn -d@@ -Tps | groff -m[macro-package] -Tps > filename.ps
  2423.  
  2424.  Figures made this way can be scaled to fit into a document. The pic
  2425.  language is easy to understand, so the graphs can be edited by hand if
  2426.  need be. All coordinates in the pic-file produced by gnuplot are given
  2427.  as x+gnuplotx and y+gnuploty. By default x and y are given the value 0
  2428.  If this line is removed with an editor in a number of files one can
  2429.  put several graphs i one figure like this (default size is 5.0x3.0 inches)
  2430.  
  2431.     .PS 8.0
  2432.     x=0;y=3
  2433.     copy "figa.pic"
  2434.     x=5;y=3
  2435.     copy "figb.pic"
  2436.     x=0;y=0
  2437.     copy "figc.pic"
  2438.     x=5;y=0
  2439.     copy "figd.pic"
  2440.     .PE
  2441.  
  2442.  This will produce an 8 inches wide figure with four graphs in two rows
  2443.  on top of each other
  2444.  
  2445.  One can also achieve the same thing by the command
  2446.  
  2447.    set term pic x y
  2448.  
  2449.  For example, using
  2450.  
  2451.    .PS 6.0
  2452.    copy "trig.pic"
  2453.    .PE
  2454.  
  2455. 4 hpljii
  2456. ?set terminal hpljii
  2457. ?hpljii
  2458.  The HP LaserJet II and HP DeskJet drivers have a single option.
  2459.  
  2460.  Syntax:
  2461.          set terminal hpljii {<resolution>}
  2462.          set terminal hpdj   {<resolution>}
  2463.  
  2464.  where <resolution> is the resolution of the output in dots per inch.
  2465.  It must be `75`, `100`, `150` or `300`.  Note: there must be
  2466.  enough memory available to rasterize at the higher resolutions.
  2467.  
  2468.  Example:
  2469.          set terminal hpljii 150
  2470.  
  2471. 4 latex
  2472. ?set terminal latex
  2473. ?latex
  2474.  The LaTeX and EMTeX driver allows one to specify a font type and a font
  2475.  size for the labels around a gnuplot graph.
  2476.  
  2477.  Options are:
  2478.  Fonts:
  2479.        default          (Roman 10 point)
  2480.        courier
  2481.        roman
  2482.  
  2483.  at any size you specify. (BEWARE METAFONT will not like odd sizes.)
  2484.  eg.
  2485.        gnuplot> set term latex courier 5
  2486.  
  2487.  Unless your driver is capable of building fonts at any size (e.g. dvips),
  2488.  stick to the standard 10, 11 and 12 point size.
  2489.  
  2490. 4 iris4d
  2491. ?set terminal iris4d
  2492. ?iris4d
  2493.  The iris4d driver can operate in two modes.
  2494.  
  2495.  Syntax:
  2496.          set terminal iris4d {24}
  2497.  
  2498.  If the hardware supports only 8 bits, use the default
  2499.  `set terminal iris4d`. If, however, the hardware supports 24 bits
  2500.  (8 per red/green/blue), use `set terminal iris4d 24`.
  2501.  
  2502.  When using 24-bit mode, the colors can be directly specified via the
  2503.  file .gnuplot_iris4d that is searched in the current directory and
  2504.  then in the home directory specified by the HOME environment variable.
  2505.  This file holds RGB values for the background, border, labels and nine
  2506.  plotting colors, in that order. For example, here is a file containing
  2507.  the default colors:
  2508.  
  2509.          85   85   85     /* Back Ground */
  2510.          0    0    0      /* Boundary */
  2511.          170  0    170    /* Labeling */
  2512.          85   255  255    /* Plot Color 1 */
  2513.          170  0    0      /* Plot Color 2 */
  2514.          0    170  0      /* Plot Color 3 */
  2515.          255  85   255    /* Plot Color 4 */
  2516.          255  255  85     /* Plot Color 5 */
  2517.          255  85   85     /* Plot Color 6 */
  2518.          85   255  85     /* Plot Color 7 */
  2519.          0    170  170    /* Plot Color 8 */
  2520.          170  170  0      /* Plot Color 9 */
  2521.  
  2522.  This file has exactly 12 lines of RGB triples. No empty lines are
  2523.  allowed and anything after the third number in line is ignored.
  2524.  
  2525. 4 mf
  2526. ?set terminal mf
  2527. ?mf
  2528. ?metafont
  2529.  The mf terminal driver creates a input file to the MetaFont program.
  2530.  Thus a figure may be used in the TeX document in the same way as a
  2531.  character is.
  2532.  
  2533.  To use the plot in a document the MetaFont program must be run
  2534.  with the output file from GnuPlot as input. Thus, the user needs a basic
  2535.  knowledge of the font creating process and inclusion of a new font in a
  2536.  document. However, if the Metafont program is set up properly at the
  2537.  local site an unexperienced user could perform the operation without
  2538.  much trouble.
  2539.  
  2540.  The text support is based on a MetaFont character set.
  2541.  Currently the Computer Modern Roman font set is input but the
  2542.  user are in principal free to chose whatever fonts he/she needs.
  2543.  The MetaFont source files for the chosen font must be available.
  2544.  Each character is stored in a separate picture variable in MetaFont. These
  2545.  variables may be manipulated (rotated, scaled etc.) when characters are
  2546.  needed. The drawback is the interpretation time in the MetaFont
  2547.  program. On some machines (i.e. PC) the limited amount of memory available
  2548.  may also cause problem if too many pictures are stored.
  2549.  
  2550. 5 Metafont Instructions
  2551. ?set terminal mf detailed
  2552. ?mf detailed
  2553. ?metafont detailed
  2554.  
  2555.  - Set your terminal to metafont:
  2556.    set terminal mf
  2557.  - Select an output-file, e.g.:
  2558.    set output "myfigures.mf"
  2559.  - Do your plots. Each plot will generate a separate character. Its default
  2560.  size will be 5*3 inches. You can change the size by saying set size 0.5,0.5
  2561.  or whatever fraction of the default size you want to have.
  2562.  
  2563.  - Quit gnuplot.
  2564.  
  2565.  - Generate a tfm- and gf-file by running metafont on the output of gnuplot.
  2566.  Since the plot is quite large (5*3 in), you will have to use a version
  2567.  of metafont that has a value of at least 150000 for memmax. On Unix-systems
  2568.  these are conventionally installed under the name bigmf. For the following
  2569.  assume that the command virmf stands for a big version of metafont. For example:
  2570.  
  2571.  - Invoke metafont:
  2572.      virmf '&plain'
  2573.  - Select the output device: At the metafont prompt ('*') type:
  2574.      \mode:=CanonCX;     % or whatever printer you use
  2575.  - Optionally select a magnification:
  2576.      mag:=1;             % or whatever you wish
  2577.  - Input the gnuplot-file:
  2578.      input myfigures.mf
  2579.  On a typical Unix machine there will usually be a script called mf that
  2580.  executes virmf '&plain', so you probably can substitute mf for virmf &plain.
  2581.  This will generate two files: mfput.tfm and mfput.$$$gf (where $$$ indicates
  2582.  the resolution of your device). The above can be conveniently achieved by
  2583.  typing everything on the command line, e.g.:
  2584.  virmf '&plain' '\mode:=CanonCX; mag:=1; input myfigures.mf'
  2585.  In this case the output files will be named myfigures.tfm and
  2586.  myfigures.300gf.
  2587.  
  2588.  - Generate a pk-file from the gf-file using gftopk:
  2589.    gftopk myfigures.300gf myfigures.300pk
  2590.  The name of the output-file for gftopk depends on the dvi-driver you use.
  2591.  Ask your local TeX-administrator about the naming conventions.
  2592.  Next, either install the tfm- and pk-files in the appropriate directories,
  2593.  or set your environment-variables properly. Usually this involves setting
  2594.  TEXFONTS to include the current directory and do the same thing for the
  2595.  environment-variable that your dvi-driver uses (no standard name here...).
  2596.  This step is necessary so that TeX will find the font-metric file and your
  2597.  dvi-driver will find the pk-file.
  2598.  
  2599.  - To include your plots in your document you have to tell TeX the font:
  2600.    \font\gnufigs=myfigures
  2601.  Each plot you made is stored in a single character. The first plot is
  2602.  character 0, the second is character 1, and so on... After doing the above
  2603.  step you can use the plots just like any other characters. Therefore, to
  2604.  place plots 1 and 2 centered in your document, all you have to do is:
  2605.    \centerline{\gnufigs\char0}
  2606.    \centerline{\gnufigs\char1}
  2607.  in plain TeX. For LaTeX you can, of course, use the picture environment
  2608.  and place the plot according to your wishes using the \makebox and \put
  2609.  macros.
  2610.  
  2611.  It saves you a lot of time, once you have generated the
  2612.  font, since TeX handles the plots as characters and uses minimal time to
  2613.  place them. Also the documents you make change more often, than the plots
  2614.  do. Also it saves a lot of TeX-memory. One last advantage of
  2615.  using the metafont-driver is that the dvi-file really remains device
  2616.  independent, because no \special-commands are used as in the eepic- and
  2617.  tpic-drivers.
  2618. 4 mif
  2619. ?set terminal mif
  2620. ?mif
  2621.  Several options may be set in the MIF 3.00 driver.
  2622.  
  2623.  Syntax:
  2624.       set terminal mif {<pentype>} {<curvetype>} {<help>}
  2625.  
  2626.  <pentype> selects "colour" of the graphics.
  2627.       `colour`     plot lines with line types >= 0 in colour (MIF sep. 2-7).
  2628.       `monochrome` plot all line types in black (MIF sep. 0).
  2629.  <curvetype> selects how "curves" are plotted.
  2630.       `polyline`   plot curves as continuous curves.
  2631.       `vectors`    plot curves as collections of vectors
  2632.  <help> print online help on standard error output.
  2633.       `help`       print a short description of the usage, and the options
  2634.       `?`          print a short description of the usage
  2635.  
  2636.  This terminal driver produces Frame Maker MIF format version 3.00. It
  2637.  plots in MIF Frames with the size 15*10 [cm], and plot primitives with
  2638.  the same pen will be grouped in the same MIF group. Plot primitives in
  2639.  a gnuplot plot will be plotted in a MIF Frame, and several MIF Frames
  2640.  are collected in one large MIF Frame.
  2641.  Plot primitives with line types >= 0 will as default be drawn in colour.
  2642.  As default curves are plotted as continuous lines. The MIF font used for
  2643.  text is "Times".
  2644.  
  2645.  Examples:
  2646.  
  2647.       set term mif
  2648.       set term mif vectors
  2649.       set term mif help
  2650.  
  2651.  
  2652. 4 nec-cp6
  2653. ?set terminal nec-cp6
  2654. ?nec-cp6
  2655.  One option may be set in the nec-cp6 driver.  The resolution of this
  2656.  driver is 400x320.
  2657.  
  2658.  Syntax:
  2659.          set terminal nec-cp6 monochrome
  2660.          set terminal nec-cp6 color
  2661.          set terminal nec-cp6 draft
  2662.  
  2663. 4 pbm
  2664. ?set terminal pbm
  2665. ?pbm
  2666.  Several options may be set in the PBMplus driver.
  2667.  
  2668.  Syntax:
  2669.          set terminal pbm {<fontsize>} {<colormode>}
  2670.  
  2671.  where <fontsize> is `small`, `medium`, or `large` and <colormode> is
  2672.  `monochrome`, `gray` or `color`.
  2673.  Default size is 640 pixels wide and 480 pixels high.
  2674.  The output for `monochrome` is a portable bitmap (one bit per pixel).
  2675.  The output for `gray` is a portable graymap (three bits per pixel).
  2676.  The output for `color` is a portable pixmap (color, four bits per pixel).
  2677.  The output of these drivers can be used with Jef Poskanzer's
  2678.  excellent PBMPLUS package which provides programs to convert
  2679.  the above PBMPLUS formats to GIF, TIFF, MacPaint, Macintosh PICT,
  2680.  PCX, X11 bitmap and many others.
  2681.  
  2682.  Examples:
  2683.  
  2684.          set term pbm small
  2685.          set size 2,2
  2686.          set term pbm color medium
  2687.  
  2688. 4 pcl5
  2689. ?set terminal pcl5
  2690. ?pcl5
  2691.  Three options may be set in the pcl5 driver.  The driver
  2692.  actually uses HPGL-2 but there is a name conflict among
  2693.  the terminal devices.
  2694.  
  2695.  Syntax:
  2696.          set terminal pcl5 {<mode>} {<font>} {<fontsize>}
  2697.  
  2698.  where <mode> is `landscape`, or `portrait`, <font> is `stick`,
  2699.  `univers`, or `cg_times`, and fontsize is the size in points.
  2700.          set terminal pcl5 landscape
  2701.  
  2702. 4 postscript
  2703. ?set terminal postscript
  2704. ?postscript
  2705.  Several options may be set in the PostScript driver.
  2706.  
  2707.  Syntax:
  2708.          set terminal postscript {<mode>} {<color>} {<dashed>}
  2709.                                  {"<fontname>"} {<fontsize>}
  2710.  
  2711.  where <mode> is `landscape`, `portrait`, `eps` or `default`.
  2712.  Selecting default sets all options to their defaults.
  2713.  <color> is either `color` or `monochrome`.
  2714.  <dashed> is either `solid` or `dashed`.
  2715.  "<fontname>" is the name of a valid PostScript font.
  2716.  <fontsize> is the size of the font in PostScript points.
  2717.  Defaults are `landscape`, `monochrome`, `dashed`, "Helvetica", and 14pt.
  2718.  Default size of PostScript plot is landscape mode 10 inches wide
  2719.  and 7 inches high.
  2720.  
  2721.  To get EPS output, use the `eps` mode and make only one plot per file.
  2722.  In `eps` mode the whole plot is halved in size; the fonts are half the
  2723.  given size, and the plot is 5 inches wide and 3.5 inches high.
  2724.  
  2725.  Examples:
  2726.  
  2727.          set term postscript default       # old postscript
  2728.          set term postscript landscape 22  # old psbig
  2729.          set term postscript eps 14   # old epsf1
  2730.          set term postscript eps 22   # old epsf2
  2731.          set size 0.7,1.4
  2732.          set term post portrait color "Times-Roman" 14
  2733.  
  2734. 4 regis
  2735. ?set terminal regis
  2736. ?table
  2737.  The `regis` terminal device has the option of using 4 or 16
  2738.  colors.  The default is 4.  For example:
  2739.         set term regis 16
  2740.  
  2741. 4 table
  2742. ?set terminal table
  2743. ?table
  2744.  Instead of producing a picture, term type `table` prints out
  2745.  the evaluation results in a multicolumn ASCII table of X Y Z values.
  2746.  For those times when you really want to see the numbers, now you
  2747.  can see them on the screen or save to a file.
  2748.  
  2749. 4 windows
  2750. ?set terminal windows
  2751. ?windows
  2752.  Three options may be set in the windows driver.
  2753.  
  2754.  Syntax:
  2755.          set terminal windows {<color>} {"<fontname>"} {<fontsize>}
  2756.  
  2757.  `<color>` is either `color` or `monochrome`.
  2758.  `"<fontname>"` is the name of a valid Windows font.
  2759.  `<fontsize>` is the size of the font in points.
  2760.  
  2761. 5 graph-menu
  2762. ?set terminal windows graph-menu
  2763. ?graph-menu
  2764.  The `gnuplot graph` window has the following options on a pop up menu
  2765.  accessed by pressing the right mouse button or selecting `Options`
  2766.  from the system menu:
  2767.  
  2768.  `Bring to Top` when checked brings the graph window to
  2769.  the top after every plot.
  2770.  
  2771.  `Color` when checked enables color linestyles.
  2772.  When unchecked it forces monochrome linestyles.
  2773.  
  2774.  `Copy to Clipboard` copies a bitmap and a Metafile picture.
  2775.  
  2776.  `Background...` sets the window background color.
  2777.  
  2778.  `Choose Font...` selects the font used in the graphics window.
  2779.  
  2780.  `Line Styles...` allows customization of the line colors
  2781.  and styles.
  2782.  
  2783.  `Print...` prints the graphics windows using a Windows printer
  2784.  driver and allows selection of the printer and scaling of the output.
  2785.  The output produced by `Print` is not as good as that from gnuplot's
  2786.  own printer drivers.
  2787.  
  2788.  `Update wgnuplot.ini` saves the current window locations, window
  2789.  sizes, text window font, text window font size, graph window font,
  2790.  graph window font size, background color and linestyles to the
  2791.  initialisation file `WGNUPLOT.INI`.
  2792.  
  2793. 5 printing
  2794. ?set terminal windows printing
  2795. ?printing
  2796.  In order of preference, graphs may be be printed in the
  2797.  following ways.
  2798.  
  2799.  `1.` Use the gnuplot command `set terminal` to select a printer
  2800.  and `set output` to redirect output to a file.
  2801.  
  2802.  `2.` Select the `Print...` command from the `gnuplot graph` window.
  2803.  An extra command `screendump` does this from the text window.
  2804.  
  2805.  `3.` If `set output "PRN"` is used, output will go to a temporary file.
  2806.  When you exit from gnuplot or when you change the output with another
  2807.  `set output` command, a dialog box will appear for you to select
  2808.  a Windows printer.  If you choose OK, the output will be printed
  2809.  on the selected printer, passing unmodified through the print
  2810.  manager.  It is possible to accidently (or deliberately) send
  2811.  printer output meant for one printer to an incompatible printer.
  2812.  
  2813. 5 text-menu
  2814. ?set terminal windows text-menu
  2815. ?text-menu
  2816.  The `gnuplot text` window has the following options on a pop up menu
  2817.  accessed by pressing the right mouse button or selecting `Options`
  2818.  from the system menu:
  2819.  
  2820.  `Copy to Clipboard` copies marked text to the clipboard.
  2821.  
  2822.  `Paste` copies text from the clipboard as if typed by the user.
  2823.  
  2824.  `Choose Font...` selects the font used in the text window.
  2825.  
  2826.  `Update wgnuplot.ini` saves the current text window location, text
  2827.  window size, text window font and text window font size to the
  2828.  initialisation file `WGNUPLOT.INI`.
  2829.  
  2830.  `MENU BAR`
  2831.  
  2832.  If the menu file `WGNUPLOT.MNU` is found in the same directory as
  2833.  WGNUPLOT.EXE, then the menu specified in `WGNUPLOT.MNU` will
  2834.  be loaded.
  2835.  
  2836.  Menu commands are:
  2837.    [Menu]       Start a new menu with the name on the following line
  2838.    [EndMenu]    End current menu.
  2839.    --           Insert a horizontal menu separator
  2840.    |            Insert a vertical menu separator
  2841.    [Button]     Put next macro on a push button instead of a menu.
  2842.  
  2843.  Macros take two lines with the macro name (menu entry) on the first
  2844.  line and the macro on the second line.  Leading spaces are ignored.
  2845.  
  2846.  Macros commands are:
  2847.    [INPUT]      Input string with prompt terminated by [EOS] or {ENTER}
  2848.    [EOS]        End Of String terminator.  Generates no output.
  2849.    [OPEN]       Get name of file to open from list box, with title of
  2850.                 list box terminated by [EOS], followed by default
  2851.                 filename terminated by [EOS] or {ENTER}
  2852.                 This uses COMMDLG.DLL from Windows 3.1.
  2853.    [SAVE]       Get name of file to save.  Similar to [OPEN]
  2854.  
  2855.  Macros character substitutions are:
  2856.    {ENTER}      Carriage Return '\r'
  2857.    {TAB}        Tab     '\011'
  2858.    {ESC}        Escape  '\033'
  2859.    {^A}         '\001'
  2860.    ...
  2861.    {^_}         '\031'
  2862.  
  2863.  Macros are limited to 256 characters after expansion.
  2864.  
  2865. 5 wgnuplot.ini
  2866. ?set terminal windows wgnuplot.ini
  2867. ?wgnuplot.ini
  2868.  Windows gnuplot will read some of its options from the `[WGNUPLOT]` section
  2869.  of `WGNUPLOT.INI` in the Windows directory.
  2870.  An example `WGNUPLOT.INI` file is shown below.
  2871.   [WGNUPLOT]
  2872.   TextOrigin=0 0
  2873.   TextSize=640 150
  2874.   TextFont=Terminal,9
  2875.   GraphOrigin=0 150
  2876.   GraphSize=640 330
  2877.   GraphFont=Arial,10
  2878.   GraphColor=1
  2879.   GraphToTop=1
  2880.   GraphBackground=255 255 255
  2881.   Border=0 0 0 0 0
  2882.   Axis=192 192 192 2 2
  2883.   Line1=0 0 255 0 0
  2884.   Line2=0 255 0 0 1
  2885.   Line3=255 0 0 0 2
  2886.   Line4=255 0 255 0 3
  2887.   Line5=0 0 128 0 4
  2888.  The `GraphFont` entry specifies the font name and size in points.
  2889.  The 5 numbers given in the `Border`, `Axis` and `Line` entries are
  2890.  the `Red` intensity (0-255), `Green` intensity, `Blue` intensity,
  2891.  `Color Linestyle` and `Mono Linestyle`.
  2892.  `Linestyles` are 0=SOLID, 1=DASH, 2=DOT, 3=DASHDOT, 4=DASHDOTDOT.
  2893.  In the example `WGNUPLOT.INI` file above, Line 2 is a green solid
  2894.  line in color mode, or a dashed line in monochrome mode.
  2895.  The default line width is 1 pixel.  If `Linestyle` is negative it
  2896.  specifies the width of a SOLID line in pixels.
  2897.  Line1 and any linestyle used with the `points` style must be
  2898.  SOLID with unit width.
  2899.  
  2900. 5 windows3.0
  2901. ?set terminal windows windows3.0
  2902. ?windows3.0
  2903.  Windows 3.1 is preferred, but WGNUPLOT will run under Windows 3.0
  2904.  with the following restrictions:
  2905.  
  2906.  `1.` COMMDLG.DLL and SHELL.DLL (available with Windows 3.1 or Borland C++ 3.1)
  2907.  must be in the windows directory.
  2908.  
  2909.  `2.` WGNUPLOT.HLP produced by Borland C++ 3.1 is in Windows 3.1 format.
  2910.  You need to use the WINHELP.EXE supplied with Borland C++ 3.1.
  2911.  
  2912.  `3.` It won't run in real mode due to lack of memory.
  2913.  
  2914.  `4.` Truetype fonts are not available in the graph window.
  2915.  
  2916.  `5.` Drag-drop does not work.
  2917.  
  2918. 3 tics
  2919. ?set tics
  2920. ?show tics
  2921. ?tics
  2922.  By default, tics are drawn inwards from the border on all four sides.
  2923.  The `set tics` command can be used to change the tics to be
  2924.  drawn outwards on the left and bottom borders only.
  2925.  This is useful when doing impulse plots.
  2926.  
  2927.  Syntax:
  2928.          set tics {<direction>}
  2929.          show tics
  2930.  
  2931.  where <direction> may be `in` or `out`. `set tics` defaults to `in`.
  2932.  
  2933.  See also the `set xtics`, `set ytics`, and `set ztics` command for more
  2934.  control of tic marks.
  2935. ?set ticslevel
  2936. ?show ticslevel
  2937. ?ticslevel
  2938.  Using splot, in 3-d plots, one can adjust the relative height of the
  2939.  vertical (Z) axis using `set ticslevel`. The numeric argument provided
  2940.  specifies the location of the bottom of the scale. a zero will put it
  2941.  on the bottom grid and any positive number somewhere along the z axis.
  2942.  
  2943.  Syntax:
  2944.          set ticslevel {<level>}
  2945.          show tics
  2946.  
  2947.  where <level> is a non negative numeric argument. For example,
  2948.  
  2949.          set ticslevel 0.5
  2950.  
  2951.  sets the tics level to the default value.
  2952.  
  2953.  See also the `set view`.
  2954. 3 time
  2955. ?set time
  2956. ?show time
  2957. ?time
  2958.  The optional `set time` places the time and date of the plot either
  2959.  at the top or bottom of the left margin. The exact location is
  2960.  device dependent.
  2961.  
  2962.  Syntax:
  2963.          set time {<xoff>}{,<yoff>}
  2964.          set notime
  2965.          show time
  2966.  
  2967.  Specifying constants <xoff> or <yoff> as optional offsets for the time
  2968.  will move the time <xoff> or <yoff> character screen coordinates. For
  2969.  example,
  2970.  
  2971.          set time ,-3
  2972.  
  2973.  will change only the y offset of the time, moving the title down by
  2974.  roughly the height of three characters.
  2975.  
  2976. 3 title
  2977. ?set title
  2978. ?show title
  2979. ?title
  2980.  The `set title` command produces a plot title that is centered at the
  2981.  top of the plot. Using the optional x,y screen offsets, the title
  2982.  can be placed anywhere on the plot. `set title` with no parameters
  2983.  clears the title.
  2984.  
  2985.  Syntax:
  2986.           set title {"<title-text>"} {<xoff>}{,<yoff>}
  2987.           show title
  2988.  
  2989.  Specifying constants <xoff> or <yoff> as optional offsets for the
  2990.  title will move the title <xoff> or <yoff> character screen
  2991.  coordinates. Note these are screen coordinates and not plot
  2992.  coordinates. For example,
  2993.  
  2994.           set title ,-1
  2995.  
  2996.  will change only the y offset of the title, moving the title down by
  2997.  roughly the height of one character.
  2998.  
  2999.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3000.  a newline.)
  3001. 3 trange
  3002. ?set trange
  3003. ?show trange
  3004. ?trange
  3005.  The `set trange` command sets the parametric range used to compute
  3006.  x and y values when in parametric mode. If not in parametric mode
  3007.  (see `set parametric`) then this range is not used. This command
  3008.  does not affect x/y autoscaling or x/y ranges.
  3009.  
  3010.  This range may also be specified on the `plot` command line when
  3011.  in parametric mode.
  3012.  
  3013.  Syntax:
  3014.          set trange [{<tmin> : <tmax>}]
  3015.  
  3016.  where <tmin> and <tmax> terms are constants or expressions.
  3017.  
  3018.  Both the <tmin> and <tmax> terms are optional. Anything omitted will
  3019.  not be changed, so
  3020.          set trange [:10]
  3021.  changes tmax to 10 without affecting tmin.  See also `set urange` and
  3022.  `set parametric`.
  3023. 3 urange
  3024. ?set urange
  3025. ?show urange
  3026. ?urange
  3027.  The `set urange` and `set vrange` commands sets the parametric ranges used
  3028.  to compute x, y, and z values when in `splot` parametric mode. If not in
  3029.  parametric mode (see `set parametric`) then these ranges are not used. This
  3030.  command does not affect x/y autoscaling or x/y ranges.
  3031.  
  3032.  This range may also be specified on the `splot` command line when
  3033.  in parametric mode.  See `plot` for more information
  3034.  
  3035.  Syntax:
  3036.          set urange [{<umin> : <umax>}]
  3037.  
  3038.  where <umin> and <umax> terms are constants or expressions.
  3039.  
  3040.  Both the <umin> and <umax> terms are optional. Anything omitted will
  3041.  not be changed, so
  3042.          set urange [:10]
  3043.  changes umax to 10 without affecting umin.  See also `set trange`.
  3044. 3 variables
  3045. ?show variables
  3046.  The `show variables` command lists all user-defined variables and
  3047.  their values.
  3048.  
  3049.  Syntax:
  3050.          show variables
  3051. 3 view
  3052. ?set view
  3053. ?show view
  3054. ?view
  3055.  The `set view` command sets the view point for `splot`s. This
  3056.  command controls the way the 3-d coordinates of the plot are mapped
  3057.  into the 2-d screen space. This command provides controls to both
  3058.  rotation and scaling of the plotted data but supports orthographic
  3059.  projections only.
  3060.  
  3061.  Syntax:
  3062.          set view <rot_x> {,{<rot_z>}{,{<scale>}{,<scale_z>}}}
  3063.          show view
  3064.  
  3065.  where <rot_x> and <rot_z> control the rotation angles (in degrees)
  3066.  along a virtual 3-d coordinate system aligned with the screen such
  3067.  that the screen horizontal axis is x, screen vertical axis is y, and
  3068.  the axis perpendicular to the screen is z. <rot_x> is bounded to the
  3069.  [0:180] range with a default of 60 degrees, while <rot_z> is bounded
  3070.  to the [0:360] range with a default of 30 degrees. <scale> controls
  3071.  the scaling of the entire `splot`, while <scale_z> scales the z axis
  3072.  only. Both scales default to 1.0.
  3073.  
  3074.  Examples:
  3075.          set view 60, 30, 1, 1
  3076.          set view ,,0.5
  3077.  
  3078.  The first sets all the four default values. The second changes
  3079.  only scale, to 0.5.
  3080.  
  3081.  See also `set ticslevel`.
  3082. 3 vrange
  3083. ?set vrange
  3084. ?show vrange
  3085. ?vrange
  3086.  The `set vrange` command is similar to the `set urange` command.
  3087.  Please see `set urange`.
  3088. 3 xlabel
  3089. ?set xlabel
  3090. ?show xlabel
  3091. ?xlabel
  3092.  The `set xlabel` command sets the x-axis label that is centered along
  3093.  the x axis. Using the optional x,y screen offsets, the label can be
  3094.  placed anywhere on the plot. `set xlabel` with no parameters clears
  3095.  the label.
  3096.  
  3097.  Syntax:
  3098.           set xlabel {"<label>"} {<xoff>}{,<yoff>}
  3099.           show xlabel
  3100.  
  3101.  Specifying constants <xoff> or <yoff> as optional offsets for the
  3102.  label will move the label <xoff> or <yoff> character screen
  3103.  coordinates. For example,
  3104.  
  3105.           set xlabel -1
  3106.  
  3107.  will change only the x offset of the xlabel, moving the label roughly
  3108.  one character width to the left.
  3109.  
  3110.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3111.  a newline.)
  3112. 3 xrange
  3113. ?set xrange
  3114. ?show xrange
  3115. ?xrange
  3116.  The `set xrange` command sets the horizontal range that will be
  3117.  displayed. This command turns x axis autoscaling off.
  3118.  
  3119.  This range may also be specified on the `plot` command line.
  3120.  
  3121.  Syntax:
  3122.          set xrange [{<xmin> : <xmax>}]
  3123.  
  3124.  where <xmin> and <xmax> terms are constants or expressions.
  3125.  
  3126.  Both the <xmin> and <xmax> terms are optional. Anything omitted will
  3127.  not be changed, so
  3128.          set xrange [:10]
  3129.  changes xmax to 10 without affecting xmin.
  3130. 3 xtics
  3131. ?set xtics
  3132. ?set noxtics
  3133. ?show xtics
  3134. ?xtics
  3135. ?noxtics
  3136.  Fine control of the x axis tic marks is possible with the
  3137.  `set xtics` command. The x-axis tic marks may be turned off with the
  3138.  `set noxtics` command. They may be turned on (the default state) with
  3139.  `set xtics`.
  3140.  
  3141.  Syntax:
  3142.           set xtics { {<start>, <incr>{, <end>}} |
  3143.                       {({"<label>"} <pos> {, {"<label>"} <pos>}...)} }
  3144.           set noxtics
  3145.           show xtics
  3146.  
  3147.  The <start>, <incr>, <end> form specifies that a series of tics will
  3148.  be plotted on the x axis between the x values <start> and <end>
  3149.  with an increment of <incr>. If <end> is not given it is assumed to be
  3150.  infinity. The increment may be negative. For example,
  3151.            set xtics 0,.5,10
  3152.  makes tics at 0, 0.5, 1, 1.5, ..., 9.5, 10.
  3153.  
  3154.  The ("<label>" <pos>, ...) form allows arbitrary tic positions or
  3155.  non-numeric tic labels. A set of tics are a set of positions, each
  3156.  with its own optional label. Note that the label is a string enclosed
  3157.  by quotes, and may be a constant string, such as "hello", or contain
  3158.  formatting information for the tic number (which is the same as the
  3159.  position), such as "%3f clients". See `set format` for more
  3160.  information about this case. The label may even be empty.
  3161.  Examples:
  3162.           set xtics ("low" 0, "medium" 50, "high" 100)
  3163.           set xtics (1,2,4,8,16,32,64,128,256,512,1024)
  3164.           set xtics ("bottom" 0, "" 10, "top" 20)
  3165.  
  3166.  Tics will only be plotted when in range.
  3167.  
  3168.  The `set ytics` and `set noytics` commands work identically.
  3169.  See also the `set format` command.
  3170. 3 xdtics
  3171. ?set xdtics
  3172. ?set noxdtics
  3173. ?show xdtics
  3174. ?xdtics
  3175. ?noxdtics
  3176.  The `set xdtics` commands converts the x axis tic marks to days of
  3177.  the week where 0=Sun and 6=Sat.  Overflows are converted modulo 7
  3178.  to dates.
  3179.  
  3180.  Examples:
  3181.         set xdtics
  3182.  
  3183.  Sets x axis tics in days.
  3184.  
  3185.  The `set ydtics` `set zdtics` and `set noydtics` `set nozdtics` commands
  3186.  work identically.
  3187.  See also the `set format` command.
  3188.  
  3189. 3 xmtics
  3190. ?set xmtics
  3191. ?set noxmtics
  3192. ?show xmtics
  3193. ?xmtics
  3194. ?noxmtics
  3195.  The `set xmtics` commands converts the x axis tic marks to months of
  3196.  the years where 1=Jan and 12=Dec.  Overflows are converted modulo 12
  3197.  to months.
  3198.  
  3199.  Examples:
  3200.         set xmtics
  3201.  
  3202.  Sets x axis tics into months.
  3203.  
  3204.  The `set ymtics` `set zmtics` and `set noymtics` `set nozmtics` commands
  3205.  work identically.
  3206.  See also the `set format` command.
  3207.  
  3208. 3 xzeroaxis
  3209. ?set xzeroaxis
  3210. ?set noxzeroaxis
  3211. ?show xzeroaxis
  3212. ?xzeroaxis
  3213. ?noxzeroaxis
  3214.  `set xzeroaxis` draws the x-axis. By default, this option is on.
  3215.  `set noxzeroaxis` causes GNUPLOT to omit the x-axis.
  3216.  
  3217.  Syntax:
  3218.          set xzeroaxis
  3219.          set noxzeroaxis
  3220.          show xzeroaxis
  3221. 3 ylabel
  3222. ?set ylabel
  3223. ?show ylabel
  3224. ?ylabel
  3225.  The `set ylabel` command sets the y-axis label.  The position of this
  3226.  label depends on the terminal, and can be one of the following three
  3227.  positions (the position can be adjusted with optional parameters).
  3228.  
  3229.  1. Horizontal text flushed left at the top left of the plot.
  3230.  Terminals that cannot rotate text will probably use this method.
  3231.  
  3232.  2. Vertical text centered vertically at the left of the plot.
  3233.  Terminals that can rotate text will probably use this method.
  3234.  
  3235.  3. Horizontal text centered vertically at the left of the plot.
  3236.  The EEPIC, LaTeX and TPIC drivers use this method. The user must insert
  3237.  line breaks using \\ to prevent the ylabel from overwriting
  3238.  the plot. To produce a vertical row of characters, add \\
  3239.  between every printing character (but this is ugly).
  3240.  
  3241.  Syntax:
  3242.           set ylabel {"<label>"} {<xoff>}{,<yoff>}
  3243.           show ylabel
  3244.  
  3245.  With no parameters, the label is cleared. Specifying constants <xoff>
  3246.  or <yoff> as optional offsets for the label will move the label <xoff>
  3247.  or <yoff> character screen coordinates. For example,
  3248.  
  3249.           set ylabel -1
  3250.  
  3251.  will change only the x offset of the ylabel, moving the label roughly
  3252.  one character width left of its default position. This is especially
  3253.  useful with the LaTeX driver.
  3254.  
  3255.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3256.  a newline.)
  3257. 3 yrange
  3258. ?set yrange
  3259. ?show yrange
  3260. ?yrange
  3261.  The `set yrange` command sets the vertical range that will be
  3262.  displayed. This command turns y axis autoscaling off.
  3263.  
  3264.  This range may also be specified on the `plot` command line.
  3265.  
  3266.  Syntax:
  3267.          set yrange [{<ymin> : <ymax>}]
  3268.  
  3269.  where <ymin> and <ymax> terms are constants or expressions.
  3270.  
  3271.  Both the <ymin> and <ymax> terms are optional. Anything omitted will
  3272.  not be changed, so
  3273.          set yrange [:10]
  3274.  changes ymax to 10 without affecting ymin.
  3275. 3 ytics
  3276. ?set ytics
  3277. ?set noytics
  3278. ?show ytics
  3279. ?ytics
  3280. ?noytics
  3281.  The `set ytics` and `set noytics` commands are similar to the `set xtics`
  3282.  and `set noxtics` commands. Please see `set xtics`.
  3283. 3 ydtics
  3284. ?set ydtics
  3285. ?set noydtics
  3286. ?show ydtics
  3287. ?ydtics
  3288. ?noydtics
  3289.  The `set ydtics` and `set noydtics` commands are similar to the `set xdtics`
  3290.  and `set noxdtics` commands. Please see `set xdtics`.
  3291. 3 ymtics
  3292. ?set ymtics
  3293. ?set noymtics
  3294. ?show ymtics
  3295. ?ymtics
  3296. ?noymtics
  3297.  The `set ymtics` and `set noymtics` commands are similar to the `set xmtics`
  3298.  and `set noxmtics` commands. Please see `set xmtics`.
  3299. 3 yzeroaxis
  3300. ?set yzeroaxis
  3301. ?set noyzeroaxis
  3302. ?show yzeroaxis
  3303. ?yzeroaxis
  3304. ?noyzeroaxis
  3305.  `set yzeroaxis` draws the y-axis. By default, this option is on.
  3306.  `set noyzeroaxis` causes GNUPLOT to omit the y-axis.
  3307.  
  3308.  Syntax:
  3309.          set yzeroaxis
  3310.          set noyzeroaxis
  3311.          show yzeroaxis
  3312. 3 zero
  3313. ?set zero
  3314. ?show zero
  3315. ?zero
  3316.  The `zero` value is the default threshold for values approaching 0.0.
  3317.  GNUPLOT will not plot a point if its imaginary part is greater in
  3318.  magnitude than the `zero` threshold. Axis ranges cannot be less than
  3319.  `zero`. The default `zero` value is 1e-8. This can be changed with
  3320.  the `set zero` command.
  3321.  
  3322.  Syntax:
  3323.          set zero <expression>
  3324.          show zero
  3325. 3 zeroaxis
  3326. ?set zeroaxis
  3327. ?set nozeroaxis
  3328. ?show zeroaxis
  3329. ?zeroaxis
  3330. ?nozeroaxis
  3331.  `set zeroaxis` draws the x-axis and y-axis. By default, this option is
  3332.  on.  `set nozeroaxis` causes GNUPLOT to omit the axes, and is
  3333.  equivalent to `set noxzeroaxis; set noyzeroaxis.`
  3334.  
  3335.  Syntax:
  3336.          set zeroaxis
  3337.          set nozeroaxis
  3338.          show zeroaxis
  3339.  See `set xzeroaxis` and `set yzeroaxis`.
  3340. 3 zlabel
  3341. ?set zlabel
  3342. ?show zlabel
  3343. ?zlabel
  3344.  The `set zlabel` command sets the z-axis label that is centered along
  3345.  the z axis. Using the optional x,y screen offsets, the label can be
  3346.  placed anywhere on the plot. `set zlabel` with no parameters clears
  3347.  the label.
  3348.  
  3349.  Syntax:
  3350.           set zlabel {"<label>"} {<xoff>}{,<yoff>}
  3351.           show zlabel
  3352.  
  3353.  Specifying constants <xoff> or <yoff> as optional offsets for the
  3354.  label will move the label <xoff> or <yoff> character screen
  3355.  coordinates. For example,
  3356.  
  3357.           set zlabel ,1
  3358.  
  3359.  will change only the y offset of the zlabel, moving the label roughly
  3360.  one character height up.
  3361.  
  3362.  The zlabel will be drawn whenever surfaces or contours are plotted,
  3363.  in the space above the grid level.
  3364.  
  3365.  (The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\ in a string to specify
  3366.  a newline.)
  3367. 3 zrange
  3368. ?set zrange
  3369. ?show zrange
  3370. ?zrange
  3371.  The `set zrange` command sets the vertical range that will be
  3372.  displayed. This command turns z axis autoscaling off.  The zrange is
  3373.  used only by `splot` and is ignored by `plot`.
  3374.  
  3375.  This range may also be specified on the `splot` command line.
  3376.  
  3377.  Syntax:
  3378.          set zrange [{<zmin> : <zmax>}]
  3379.  
  3380.  where <zmin> and <zmax> terms are constants or expressions.
  3381.  
  3382.  Both the <zmin> and <zmax> terms are optional. Anything omitted will
  3383.  not be changed, so
  3384.          set zrange [2:]
  3385.  changes zmin to 2 without affecting zmax.
  3386. 3 ztics
  3387. ?set ztics
  3388. ?set noztics
  3389. ?show ztics
  3390. ?ztics
  3391. ?noztics
  3392.  The `set ztics` and `set noztics` commands are similar to the
  3393.  `set xtics` and `set noxtics` commands. Please see `set xtics`.
  3394. 3 zdtics
  3395. ?set zdtics
  3396. ?set nozdtics
  3397. ?show zdtics
  3398. ?zdtics
  3399. ?nozdtics
  3400.  The `set zdtics` and `set nozdtics` commands are similar to the
  3401.  `set xdtics` and `set noxdtics` commands. Please see `set xdtics`.
  3402.  
  3403. 3 zmtics
  3404. ?set zmtics
  3405. ?set nozmtics
  3406. ?show zmtics
  3407. ?zmtics
  3408. ?nozmtics
  3409.  The `set zmtics` and `set nozmtics` commands are similar to the
  3410.  `set xmtics` and `set noxmtics` commands. Please see `set xmtics`.
  3411. 2 shell
  3412. ?shell
  3413.  The `shell` command spawns an interactive shell. To return to
  3414.  GNUPLOT, type `logout` if using VMS, `exit` or the END-OF-FILE
  3415.  character if using Unix, `endcli` if using AmigaDOS, or `exit` if
  3416.  using MS-DOS or OS/2.
  3417.  
  3418.  A single shell command may be spawned by preceding it with the !
  3419.  character ($ if using VMS) at the beginning of a command line.
  3420.  Control will return immediately to GNUPLOT after this command is
  3421.  executed. For example, in VMS, AmigaDOS, MS-DOS or OS/2,
  3422.  
  3423.       ! dir
  3424.  
  3425.  prints a directory listing and then returns to GNUPLOT.
  3426.  
  3427.  On an Atari, the `!` command first checks whether a shell is already
  3428.  loaded and uses it, if available. This is practical if GNUPLOT is run
  3429.  from `gulam`, for example.
  3430. 2 splot
  3431. ?splot
  3432. ?surface plot
  3433.  Three-dimensional surface and contour plotting is available in
  3434.  GNUPLOT with the `splot` command. See the `plot` command for features
  3435.  common to the `plot` command.
  3436.  
  3437.  See also `set contour`, `set cntrparam`, and `set surface`.
  3438.  
  3439. 3 Binary Data
  3440. ?binary-data
  3441. ?binary files
  3442.  Gnuplot will dynamically determine if a datafile is ASCII or
  3443.  binary.  ASCII data files are discussed in the `plot` section.
  3444.  For three dimensions, single precision floats are stored as follows:
  3445.  
  3446.        <ncols> <x0> <x1> <x2> ...
  3447.        <y0> <z0,0> <z0,1> <z0,2> ...
  3448.        <y1> <z1,0> <z1,1> <z1,2> ...
  3449.  
  3450.  which is converted into triplet:
  3451.  
  3452.        <x0> <y0> <z0,0>
  3453.        <x0> <y1> <z0,1>
  3454.        <x0> <y2> <z0,2>
  3455.  
  3456.        <x1> <y0> <z1,0>
  3457.        <x1> <y1> <z1,1>
  3458.        <x1> <y2> <z1,2>
  3459.  
  3460.  These triplets are then converted into gnuplot iso_curves and then
  3461.  uses gnuplot to do the rest of the plotting.
  3462.  
  3463.  A collection of matrix and vector manipulation routines (in C) are
  3464.  provided in `gnubin.c`.  The routine to write binary data is
  3465.  
  3466.   int fwrite_matrix(file,m,nrl,nrl,ncl,nch,row_title,column_title)
  3467.  
  3468.  An example of using these routines is provided in the file `bf_test.c`.
  3469.  The corresponding demo file is `demo/binary.dem`.
  3470. 2 start-up
  3471. ?startup
  3472. ?start
  3473. ?.gnuplot
  3474.  When GNUPLOT is run, it looks for an initialization file to load.
  3475.  This file is called `.gnuplot` on Unix and AmigaDOS systems, and
  3476.  `GNUPLOT.INI` on other systems. If this file is not found in the
  3477.  current directory, the program will look for it in the home directory
  3478.  (under AmigaDOS, AtariTOS, MS-DOS and OS/2, the environment variable
  3479.  GNUPLOT should contain the name of this directory).  Note: if NOCWDRC
  3480.  is defined during the installation, GNUPLOT will not read from the
  3481.  current directory.
  3482.  
  3483.  If this file is found, GNUPLOT executes the commands in this file.
  3484.  This is most useful for setting the terminal type and defining any
  3485.  functions or variables that are used often.
  3486. 2 substitution
  3487. ?substitution
  3488.  Command-line substitution is specified by a system command enclosed in
  3489.  backquotes. This command is spawned and the output it produces
  3490.  replaces the name of the command (and backquotes) on the command line.
  3491.  
  3492.  Newlines in the output produced by the spawned command are replaced
  3493.  with blanks.
  3494.  
  3495.  Command-line substitution can be used anywhere on the GNUPLOT command
  3496.  line.
  3497.  
  3498.  Example:
  3499.  
  3500.  This will run the program `leastsq` and replace `leastsq` (including
  3501.  backquotes) on the command line with its output:
  3502.  
  3503.           f(x) = `leastsq`
  3504.  
  3505.  or, in VMS
  3506.  
  3507.           f(x) = `run leastsq`
  3508. 2 user-defined
  3509. ?userdefined
  3510. ?variables
  3511.  New user-defined variables and functions of one through five variables may
  3512.  be declared and used anywhere.
  3513.  
  3514.  User-defined function syntax:
  3515.          <function-name> ( <dummy1> {,<dummy2> {, ...} } ) = <expression>
  3516.  
  3517.  where <expression> is defined in terms of <dummy1> through <dummy5>.
  3518.  
  3519.  User-defined variable syntax:
  3520.          <variable-name> = <constant-expression>
  3521.  
  3522.  Examples:
  3523.          w = 2
  3524.          q = floor(tan(pi/2 - 0.1))
  3525.          f(x) = sin(w*x)
  3526.          sinc(x) = sin(pi*x)/(pi*x)
  3527.          delta(t) = (t == 0)
  3528.          ramp(t) = (t > 0) ? t : 0
  3529.          min(a,b) = (a < b) ? a : b
  3530.          comb(n,k) = n!/(k!*(n-k)!)
  3531.          len3d(x,y,z) = sqrt(x*x+y*y+z*z)
  3532.  
  3533.  Note that the variable `pi` is already defined.
  3534.  
  3535.  See `show functions` and `show variables`.
  3536. 2 bugs
  3537. ?bugs
  3538.  The bessel functions do not work for complex arguments.
  3539.  
  3540.  The gamma function does not work for complex arguments.
  3541.  
  3542.  There is a bug in the stdio library for old Sun operating systems
  3543.  (SunOS Sys4-3.2). The "%g" format for 'printf' sometimes incorrectly
  3544.  prints numbers (e.g., 200000.0 as "2"). Thus, tic mark labels may be
  3545.  incorrect on a Sun4 version of GNUPLOT. A work-around is to rescale
  3546.  the data or use the `set format` command to change the tic mark format
  3547.  to "%7.0f" or some other appropriate format. This appears to have been
  3548.  fixed in SunOS 4.0.
  3549.  
  3550.  Another bug: On a Sun3 under SunOS 4.0, and on Sun4's under Sys4-3.2
  3551.  and SunOS 4.0, the 'sscanf' routine incorrectly parses "00 12" with
  3552.  the format "%f %f" and reads 0 and 0 instead of 0 and 12. This
  3553.  affects data input. If the data file contains x coordinates that are
  3554.  zero but are specified like '00', '000', etc, then you will read the
  3555.  wrong y values. Check any data files or upgrade the SunOS.
  3556.  It appears to have been fixed in SunOS 4.1.1.
  3557.  
  3558.  Microsoft C 5.1 has a nasty bug associated with the %g format for
  3559.  printf. When any of the formats "%.2g", "%.1g", "%.0g", "%.g" are
  3560.  used, printf will incorrectly print numbers in the range 1e-4 to 1e-1.
  3561.  Numbers that should be printed in the %e format are incorrectly
  3562.  printed in the %f format, with the wrong number of zeros after the
  3563.  decimal point.
  3564.  
  3565.  To work around this problem, use the %e or %f formats explicitly.
  3566.  
  3567.  GNUPLOT, when compiled with Microsoft C, did not work correctly on two
  3568.  VGA displays that were tested. The CGA, EGA and VGA drivers should
  3569.  probably be rewritten to use the Microsoft C graphics library.
  3570.  GNUPLOT compiled with Borland C++ uses the Turbo C graphics drivers and
  3571.  does work correctly with VGA displays.
  3572.  
  3573.  VAX/VMS 4.7 C compiler release 2.4 also has a poorly implemented %g
  3574.  format for printf. The numbers are printed numerically correct, but
  3575.  may not be in the requested format. The K&R second edition says that
  3576.  for the %g format, %e is used if the exponent is less than -4 or greater
  3577.  than or equal to the precision. The VAX uses %e format if the exponent
  3578.  is less than -1. The VAX appears to take no notice of the precision
  3579.  when deciding whether to use %e or %f for numbers less than 1.
  3580.  To work around this problem, use the %e or %f formats explicitly.
  3581.  From the VAX C 2.4 release notes:
  3582.  e,E,f,F,g,G  Result will always contain a decimal  point.
  3583.  For g and G, trailing zeros will not be removed from the result.
  3584.  
  3585.  VAX/VMS 5.2 C compiler release 3.0 has a slightly better implemented
  3586.  %g format than release 2.4, but not much. Trailing decimal points are
  3587.  now removed, but trailing zeros are still not removed from %g numbers
  3588.  in exponential format.
  3589.  
  3590.  ULTRIX X11R3 has a bug that causes the X11 driver to display "every
  3591.  other" plot.  The bug seems to be fixed in DEC's release of X11R4 so
  3592.  newer releases of ULTRIX don't seem to have the problem.  Solutions for
  3593.  older sites include upgrading the X11 libraries (from DEC or direct from
  3594.  MIT) or defining ULTRIX_KLUDGE when compiling the x11.trm file.  Note
  3595.  that the kludge is not an ideal fix, however.
  3596.  
  3597.  The constant HUGE was incorrectly defined in the NeXT OS 2.0 operating
  3598.  system.  HUGE should be set to 1e38 in plot.h. This error has been
  3599.  corrected in the 2.1 version of NeXT OS.
  3600.  
  3601.  Some older models of HP plotters do not have a page eject command 'PG'.
  3602.  The current HPGL driver uses this command in HPGL_reset.  This may need
  3603.  to be removed for these plotters.  The current PCL5 driver uses HPGL/2
  3604.  for text as well as graphics.  This should be modified to use scalable
  3605.  PCL fonts.
  3606.  
  3607.  On the Atari version, it is not possible to send output directly to
  3608.  the printer (using `/dev/lp` as output file), since CRs are added to LFs in
  3609.  binary output. As a workaround write the output to a file and copy it to
  3610.  the printer afterwards using a shell command.
  3611.  
  3612.  Please report any bugs to bug-gnuplot@dartmouth.edu.
  3613.