GNUPLOT 3.4 Quick Reference
 to enter GNUPLOT: gnuplot
 to enter batch GNUPLOT: gnuplot macro_file
 to pipe commands to GNUPLOT: application  gnuplot
see below for environment variables you might want to change
before entering GNUPLOT.
exit GNUPLOT: quit
All GNUPLOT commands can be abbreviated to the first few
unique letters, usually three characters. This reference uses
the complete name for clarity.
 introductory help: help plot
 help on a topic: help topic
 list of all help available: help or ?
 show current environment: show all
The UNIX, MSDOS and VMS versions of GNUPLOT support commandline
editing and a command history. EMACS style editing is supported.
 Line Editing:
 move back a single character: ^B
 move forward a single character: ^F
 moves to the beginning of the line: ^A
 moves to the end of the line: ^E
 delete the previous character: ^H and DEL
 deletes the current character: ^D
 deletes to the end of line: ^K
 redraws line in case it gets trashed: ^L, ^R
 deletes the entire line: ^U
 deletes the last word: ^W
 History:
 moves back through history: ^P
 moves forward through history: ^N

The following arrow keys may be used on the MSDOS version if READLINE is
used.
 IBM PC Arrow Keys:
 Left Arrow: same as ^B
 Right Arrow: same as ^F
 Ctrl Left Arrow: same as ^A
 Ctrl Right Arrow: same as ^E
 Up Arrow: same as ^P
 Down Arrow: same as ^N
All screen graphics devices are specified by names and options.
This information can be read from a startup file (.gnuplot in UNIX).
If you change the graphics device, you must replot with the
replot command.
get a list of valid devices: set terminal [options]
 Graphics Terminals:
 AED 512 Terminal: set term aed512
 AED 767 Terminal: set term aed767
 Amiga: set term amiga
 Adobe Illustrator 3.0 Format: set term aifm
 Apollo graphics primitive, rescalable: set term apollo
 Atari ST: set term atari
 BBN Bitgraph Terminal: set term bitgraph
 SCO CGI Driver: set term cgi
 Apollo graphics primitive, fixed window: set term gpr
 SGI GL windown: set term iris4d
 MSDOS Kermit Tek4010 term  color: set term kc_tek40xx
 MSDOS Kermit Tek4010 term  mono: set term km_tek40xx
 NeXTstep window system: set term next
 REGIS graphics language: set term regis
 Selanar Tek Terminal: set term selanar
 SunView window system: set term sun
 Tektronix 4106, 4107, 4109 & 420X: set term tek4OD10x
 Tektronix 4010; most TEK emulators: set term tek40xx
 VAX UIS window system: set term VMS
 VTlike tek40xx terminal emulator: set term vttek
 UNIX plotting (not always supplied): set term unixplot
 AT&T 3b1 or 7300 UNIXPC: set term unixpc
 X11 default display device: set term x11
 X11 multicolor point default device: set term X11
 Turbo C PC Graphics Modes:
 Hercules: set term hercules
 Color Graphics Adaptor: set term cga
 Monochrome CGA: set term mcga
 Extended Graphics Adaptor: set term ega
 VGA: set term vga
 Monochrome VGA: set term vgamono
 Super VGA  requires SVGA driver: set term svga
 AT&T 6300 Micro: set term att
 MS Windows 3.x and OS/2 Presentation Manager are also supported.
 Hardcopy Devices:
 Unknown  not a plotting device: set term unknown
 Dump ASCII table of X Y [Z] values: set term table
 printer or glass dumb terminal: set term dumb
 Roland DXY800A plotter: set term dxy800a
 Dot Matrix Printers
 Epsonstyle 60dot per inch printers: set term epson_60dpi
 Epson LX800, Star NL10: set term epson_lx800
 NX1000, PROPRINTER: set term epson_lx800
 NEC printer CP6, Epson LQ800:
set term nec_cp6 [monochrome color draft]
 Star Color Printer: set term starc
 Tandy DMP130 60dot per inch: set term tandy_60dpi
 Vectrix 384 & Tandy color printer: set term vx384
 Laser Printers
 Talaris EXCL language: set term excl
 Imagen laser printer: set term imagen
 LN03Plus in EGM mode: set term ln03
 PostScript graphics language:
set term post [mode color `font' size]
 CorelDraw EPS: set term corel [mode color `font' size]
 Prescribe  for the Kyocera Laser Printer: set term prescribe
 Kyocera Laser Printer with Courier font: set term kyo
 QMS/QUIC Laser (also Talaris 1200): set term qms
 Metafiles
 AutoCAD DXF (120x80 default): set term dxf
 FIG graphics language: SunView or X: set term fig
 FIG graphics language: Large Graph: set term bfig
 SCO hardcopy CGI: set term hcgi
 Frame Maker MIF 3.0: set term mif [pentype curvetype help]
 Portable bitmap: set term pbm [fontsize color]
 Uniplex Redwood Graphics Interface Protocol: set term rgip
 TGIF language: set term tgif
 HP Devices
 HP2623A and maybe others: set term hp2623A
 HP2648 and HP2647: set term hp2648
 HP7580, & probably other HPs (4 pens): set term hp7580B
 HP7475 & lots of others (6 pens): set term hpgl
 HP Laserjet series II & clones: set term hpljii
 HP DeskJet 500: set term hpdj
 HP PaintJet & HP3630:
set term hppj [FNT5X9 FNT9X17 FNT13x25]
 HP laserjet III (HPGL plot vectors):
set term pcl5 [mode font fontsize ]
 TeX picture environments
 LaTeX picture environment: set term latex
 EEPIC  extended LaTeX picture: set term eepic
 LaTeX picture with emTeX specials: set term emtex
 PSTricks macros for TeX or LaTeX: set term pstricks
 TPIC specials for TeX or LaTeX: set term tpic
 MetaFont font generation input: set term mf
 plot a data file: plot `fspec'
 load in a macro file: load `fspec'
 save command buffer to a macro file: save `fspec'
 save settings for later reuse: save set `fspec'
plot and splot are the primary commands
plot is used to plot 2d
functions and data, while splot plots 3d surfaces and data.
Syntax:
plot {ranges} function {title} {style}
{,function {title} {style}...}
splot {ranges} function {title} {style}
{,function {title} {style}...}
where function is either a mathematical expression, the name of a
data file enclosed in quotes, or a pair ( plot ) or triple ( splot )
of mathematical expressions in the case of parametric functions.
Userdefined functions and variables may also be defined here.
Examples will be given below.
Discrete data contained in a file can displayed by specifying the
name of the data file (enclosed in quotes) on the plot or splot
command line. Data files should contain one data point per line.
Lines beginning with # (or ! on VMS) will be treated as comments
and ignored. For plots, each data point represents an (x,y)
pair. For splots, each point is an (x,y,z) triple. For plots
with error bars (see plot errorbars), each data point is either
(x,y,ydelta) or (x,y,ylow,yhigh). In all cases, the numbers on each
line of a data file must be separated by blank space. This blank
space divides each line into columns.
For plots the x value may be omitted, and for splots the x
and y values may be omitted. In either case the omitted values are
assigned the current coordinate number. Coordinate numbers start at 0
and are incremented for each data point read.
Implicitly, there are two types of 3d datafiles. If all the isolines
are of the same length, the data is assumed to be a grid data, i.e.,
the data has a grid topology. Cross isolines in the other parametric
direction (the ith cross isoline passes thru the ith point of all the
provided isolines) will also be drawn for grid data. (Note contouring
is available for grid data only.) If all the isolines are not of the
same length, no cross isolines will be drawn and contouring that data
is impossible.
For splot if 3d datafile and using format (see splot datafile using)
specify only z (height field), a non parametric mode must be specified.
If, on the other hand, x, y, and z are all specified, a parametric
mode should be selected (see set parametric) since data is defining a
parametric surface.
 example of plotting a 3d data: set parametric;splot 'glass.dat'
 example of plotting explicit:
set noparametric;splot 'datafile.dat'
On some computer systems with a popen function (UNIX), the datafile
can be piped through a shell command by starting the file name
with a '<'. For example:
pop(x) = 103*exp(x/10)
plot "< awk '{print $11965 $2 }' population.dat", pop(x)
would plot the same information as the first population example
but with years since 1965 as the x axis.
Similarly, output can be piped to another application, e.g.
set out "lpr Pmy_laser_printer"
The format of data within a file can be selected with the using
option. An explicit scanf string can be used, or simpler column
choices can be made.
 plot "datafile"
 { using {<ycol> 
 <xcol>:<ycol> 
 <xcol>:<ycol>:<ydelta> 
 <xcol>:<ycol>:<ylow>:<yhigh> 
 {"<scanf string>"}}...
 splot "datafile"
 { using {<xcol>:<ycol>:<zcol>}
 {"<scanf string>"}}...
<xcol>, <ycol>, and <zcol> explicitly select the columns
to plot from a space or tab separated multicolumn data file. If only
<ycol> is selected for plot, <xcol> defaults to 1.
If only <zcol> is selected for splot, then only that column
is read from the file. An <xcol> of 0 forces <ycol> to be
plotted versus its coordinate number. <xcol>,
<ycol>, and <zcol> can be entered as constants or expressions.
If errorbars (see also plot errorbars) are used for plots,
ydelta (for example, a +/ error) should be provided as the third
column, or ylow and yhigh as third and fourth columns. These columns
must follow the x and y columns.
Scanf strings override any <xcol>:<ycol>(:<zcol>)
choices, except for ordering of input, e.g.,
plot "datafile" using 2:1 "%f%*f%f"
causes the first column to be y and the third column to be x.
If the scanf string is omitted, the default is generated based on the
<xcol>:<ycol>(:<zcol>) choices. If the using
option is omitted, "%f%f" is used for plot ("%f%f%f%f" for
errorbar plots) and "%f%f%f" is
used for splot .
plot "MyData" using "%*f%f%*20[^\n]%f" w lines
Data are read from the file "MyData" using the format
"%*f%f%*20[^\n]%f". The meaning of this format is: "%*f" ignore the
first number, "%f" then read in the second and assign to x,
"%*20[^\n]" then ignore 20 nonnewline characters, "%f" then read in
the y value.
Error bars are supported for 2d data file plots by reading one or
two additional columns specifying ydelta or ylow and yhigh
respectively. No support exists for x error bars or any error bars
for splots.
In the default situation, GNUPLOT expects to see three or four
numbers on each line of the data file, either (x, y, ydelta) or
(x, y, ylow, yhigh). The x coordinate must be specified. The order
of the numbers must be exactly as given above. Data files in this
format can easily be plotted with error bars:
plot "data.dat" with errorbars
The error bar is a vertical line plotted from (x, ylow) to (x,
yhigh). If ydelta is specified instead of ylow and yhigh,
ylow=yydelta and yhigh=y+ydelta are derived. If there
are only two numbers on the line, yhigh and ylow are both set to
y. To get lines plotted between the data points, plot the
data file twice, once with errorbars and once with lines.
If y autoscaling is on, the y range will be adjusted to fit the
error bars.
x,y,ylow & yhigh from columns 1,2,3,4:
plot "data.dat" us 1:2:3:4 w errorbars
x from third, y from second, ydelta from 6:
plot "data.dat" using 3:2:6 with errorbars
The optional range specifies the region of the plot that will be
displayed.
Ranges may be provided on the plot and splot command line
and affect only that plot, or in the set xrange, set yrange,
etc., commands, to change the default ranges for future plots.
[{<dummyvar>=}{<xmin>:<xmax>}]
{ [{<ymin>:<ymax>}] }
where dummyvar is the independent variable (the defaults are x and
y, but this may be changed with set dummy ) and the min and max
terms can be constant expressions.
Both the min and max terms are optional. The ':' is also optional
if neither a min nor a max term is specified. This allows '[]' to
be used as a null range specification.
Specifying a range in the plot command line turns autoscaling for
that axis off for that plot. Using one of the set range commands
turns autoscaling off for that axis for future plots, unless changed
later. (See set autoscale).
 This uses the current ranges: plot cos(x)
 This sets the x range only: plot [10:30] sin(pi*x)/(pi*x)
 This sets both the x and y ranges:
plot [pi:pi] [3:3] tan(x), 1/x
 sets only y range, & turns off autoscaling on both axes:
plot [ ] [2:sin(5)*8] sin(x)**besj0(x)
 This sets xmax and ymin only: plot [:200] [pi:] exp(sin(x))
 This sets the x, y, and z ranges: splot [0:3] [1:4] [1:1] x*y
Plots may be displayed in one of six styles: lines, points,
linespoints, impulses, dots, steps,
or errorbars. The lines style
connects adjacent points with lines. The points style displays a
small symbol at each point. The linespoints style does both
lines and points. The impulses style displays
a vertical line from the x axis (or from the grid base for splot)
to each point. The dots style plots a tiny dot at each point;
this is useful for scatter plots with many points.
The errorbars style is only relevant to 2d data file plotting. It
is treated like points for splots and function plots.
For data plots, errorbars is like points, except
that a vertical error bar is also drawn: for each point (x,y), a line is
drawn from (x,ylow) to (x,yhigh). A tic mark is placed at the ends of the error
bar. The ylow and yhigh values are read from the data file's columns,
as specified with the using option to plot. See
plot errorbars for more information.
Default styles are chosen with the set function style and
set data style commands.
By default, each function and data file will use a different
line type and point type, up to the maximum number of available
types. All terminal drivers support at least six different point
types, and reuse them, in order, if more than six are required.
The LaTeX driver supplies an additional six point types (all variants
of a circle), and thus will only repeat after twelve curves are
plotted with points.
If desired, the style and (optionally) the line type and point type
used for a curve can be specified.
with <style> {<linetype> {<pointtype>}}
where <style> is either lines, points,
linespoints, impulses,
dots, steps, or errorbars.
The <linetype> & <pointtype> are positive
integer constants or expressions and specify the line type and point
type to be used for the plot. Line type 1 is the first line type used
by default, line type 2 is the second line type used by default, etc.
 plots sin(x) with impulses: plot sin(x) with impulses
 plots x*y with points, x**2 + y**2 default:
splot x*y w points, x**2 + y**2
 plots tan(x) with default function style:
plot [ ] [2:5] tan(x)
 plots "data.1" with lines: plot "data.1" with l
 plots "leastsq.dat" with impulses: plot 'leastsq.dat' w i
 plots "exper.dat" with errorbars & lines connecting points:
plot 'exper.dat' w l, 'exper.dat' w err
Here 'exper.dat' should have three or four data columns.
 plots x**2 + y**2 and x**2  y**2 with the same line type:
splot x**2 + y**2 w l 1, x**2  y**2 w l 1
 plots sin(x) and cos(x) with linespoints, using the same line type
but different point types:
plot sin(x) w linesp 1 3, cos(x) w linesp 1 4
 plots file ``data'' with points style 3:
plot "data" with points 1 3
Note that the line style must be specified when specifying the point
style, even when it is irrelevant. Here the line style is 1 and the
point style is 3, and the line style is irrelevant.
See set style to change the default styles.
A title of each plot appears in the key. By default the title is
the function or file name as it appears on the plot command line.
The title can be changed by using the title option. This option
should precede any with option.
title "<title>"
where <title> is the new title of the plot and must be enclosed in
quotes. The quotes will not be shown in the key.
 plots y=x with the title 'x': plot x
 plots the "glass.dat" file with the title 'revolution surface':
splot "glass.dat" tit 'revolution surface'
 plots x squared with title "x^2" and "data.1" with title 'measured data':
plot x**2 t "x^2", "data.1" t 'measured data'
 all commands below begin with set: set
 set mapping of polar angles: angles [degreesradians]
 arrows from point to:
arrow [<tag>][from <sx>,<sy>,<sz>]
[to <ex>,<ey>,<ez>][nohead]
 force autoscaling of an axis: autoscale [<axes>]
 enter/exit parametric mode: [no]parametric
 display border: [no]border
 clip points/line near boundaries: [no]clip <cliptype>
 specify parameters for contour plots: cntrparam
[spline][points][order][levels]
 enable splot contour plots: [no]contour [basesurfaceboth]
 default plotting style for data:
data style <stylechoice>
 specify dummy variable: dummy <dummy1>,<dummy2>...
 ticmark label format specification: format
[<axes>]["formatstring"]
 function plotting style: function style <stylechoice>
 draw a grid at tick marks: [no]grid
 enables hiddenline removal: [no]hidden3d
 specify number of isolines: isosamples <expression>
 enables key of curves in plot:
key <x>,<y>,<z>
 logscaling of an axes (optionally giving base):
logscale <axes> [<base>]
 mapping 3D coordinates: mapping
[cartesiansphericalcylindrical]
 offsets from center of graph: offsets
<left>,<right>,<top>,<bottom>
 mapping 2D coordinates: [no]polar
 set radial range: rrange [<rmin>:<rmax>]
 set sampling rate of functions: samples <expression>
 set scaling factors of plot: size <xsize>,<ysize>
 control display of isolines of surface: [no]surface
 control graphics device: terminal <device>
 change direction of tics: tics <direction>
 adjust relative height of vertical axis:
ticslevel <level>
 turn on time/date stamp: [no]time
 set centered plot title:
title "titletext" <xoff>,<yoff>
 set parametric range: trange [<tmin>:<tmax>]
 set surface parametric ranges: urange or vrange
 sets the view point for splot: view
<rot_x>,<rot_z>,<scale>,<scale_z>
 sets xaxis label:
xlabel "<label>" <xoff>,<yoff>
 set horizontal range: xrange [<xmin>:<xmax>]
 change horizontal tics:
xtics <start>,<incr>,<end>,
"<label>" <pos>
 draw xaxis: [no]xzeroaxis
 sets yaxis label:
ylabel "<label>" <xoff>,<yoff>
 set vertical range: yrange [<ymin>:<ymax>]
 change vertical tics: ytics <start>,<incr>,<end>,
"<label>" <pos>
 draw yaxis: [no]yzeroaxis
 set default threshold for values near 0:
zero <expression>
 draw axes: [no]zeroaxis
 sets zaxis label:
zlabel "<label>" <xoff>,<yoff>
 set vertical range: zrange [<zmin>:<zmax>]
 change vertical tics: ztics <start>,<incr>,<end>,
"<label>" <pos>
 draw zaxis: [no]zzeroaxis
Enable contour drawing for surfaces. This option is available for splot
only.
Syntax:
set contour { base  surface  both }
set nocontour
If no option is provided to set contour, the default is base.
The three options specify where to draw the contours: base draws
the contours on the grid base where the x/ytics are placed, surface
draws the contours on the surfaces themselves, and both draws the
contours on both the base and the surface.
See also set cntrparam for the parameters that affect the drawing of
contours.
Sets the different parameters for the contouring plot
(see also contour).
 set cntrparam:
 {{ linear  cubicspline  bspline }
 points <n> 
 order <n> 
 levels { [ auto ] <n> 
 discrete <z1> <z2> ... 
 incr <start> <increment> [ <n> ] }}
 5 automatic levels: set cntrparam levels auto 5
 3 discrete levels at 10%, 37% and 90%:
set cntrp levels discrete .1 1/exp(1) .9
 5 incremental levels at 0, .1, .2, .3 and .4:
set cntrparam levels incremental 0 .1 5
 sets n = 10 retaining current setting of auto, incr., or discr.:
set cntrparam levels 10
 set start = 100 and increment = 50, retaining old n:
set cntrparam levels incremental 100 50
This command controls the way contours are plotted. <n> should be an
integral constant expression and <z1>,
<z2> any constant expressions. The parameters are:
linear, cubicspline, bspline  Controls type of
approximation or interpolation. If linear , then the contours are
drawn piecewise
linear, as extracted from the surface directly. If cubicspline, then
piecewise linear contours are interpolated to form a somewhat smoother
contours, but which may undulate. The third option is the uniform
bspline, which only approximates the piecewise linear data but is
guaranteed to be smoother.
points  Eventually all drawings are done with piecewise linear
strokes. This number controls the number of points used to
approximate a curve. Relevant for cubicspline and bspline
modes only.
order  Order of the bspline approximation to be used. The bigger
this order is, the smoother the resulting contour. (Of course, higher order
bspline curves will move further away from the original piecewise linear
data.) This option is relevant for bspline mode only. Allowed
values are integers in the range from 2 (linear) to 10.
levels  Number of contour levels, 'n'. Selection of the levels is
controlled by 'auto' (default), 'discrete', and 'incremental'. For 'auto',
if the surface is bounded by zmin and zmax then contours will be
generated from zmin+dz to zmaxdz in steps of size dz, where
dz = (zmax  zmin) / (levels + 1). For 'discrete', contours will be
generated at z = z1, z2 ... as specified. The number of discrete levels
is limited to MAX_DISCRETE_LEVELS, defined in plot.h to be 30. If
'incremental', contours are generated at <n> values of z beginning at
<start> and increasing by <increment>.
Arbitrary labels can be placed on the plot using the set label
command. If the z coordinate is given on a plot it is ignored; if
it is missing on a splot it is assumed to be 0.
 set label {<tag>}{" <label text> "}
{at <x>,<y>{,<z>}}
{<justification>}
 set nolabel {<tag>}
 show label
The text defaults to "", and the position to 0,0,0. The <x>,
<y>, and
<z> values are in the graph's coordinate system. The tag is an
integer that is used to identify the label. If no <tag> is given, the
lowest unused tag value is assigned automatically. The tag can be used
to delete or change a specific label. To change any attribute of an
existing label, use the set label command with the appropriate tag,
and specify the parts of the label to be changed.
By default, the text is placed flush left against the point x,y,z.
To adjust the way the label is positioned with respect to the point
x,y,z, add the parameter <justification>, which may be left,
right
or center , indicating that the point is to be at the left, right or
center of the text. Labels outside the plotted boundaries are
permitted but may interfere with axes labels or other text.
 label at (1,2) to "y=x": set label "y=x" at 1,2
 label "y=x^2" w right of the text at (2,3,4),
& tag the label number 3:
set label 3 "y=x^2" at 2,3,4 right
 change preceding label to center justification:
set label 3 center
 delete label number 2: set nolabel 2
 delete all labels: set nolabel
 show all labels (in tag order): show label
(The EEPIC, Imagen, LaTeX, and TPIC drivers allow \\
in a string to specify a newline.)
For further information on these commands, print out a copy
of the GNUPLOT manual.
 change working directory: cd
 erase current screen or device: clear
 exit GNUPLOT: exit or quit or EOF
 display text and wait: pause <time> ["<string>"]
 print the value of <expression>: print <expression>
 print working directory: pwd
 repeat last plot or splot: replot
 spawn an interactive shell: ! (UNIX) or $ (VMS)
A number of shell environment variables are understood by GNUPLOT.
None of these are required, but may be useful.
If GNUTERM is defined, it is used as the name of the terminal type to
be used. This overrides any terminal type sensed by GNUPLOT on start
up, but is itself overridden by the .gnuplot (or equivalent) startup
file (see startup), and of course by later explicit changes.
On Unix, AmigaDOS, and MSDOS, GNUHELP may be defined to be the pathname
of the HELP file (gnuplot.gih).
On VMS, the symbol GNUPLOT HELP should be defined as the name of
the help library for GNUPLOT.
On Unix, HOME is used as the name of a directory to search for
a .gnuplot file if none is found in the current directory.
On AmigaDOS and MSDOS, GNUPLOT is used. On VMS, SYS LOGIN: is used.
See help startup.
On Unix, PAGER is used as an output filter for help messages.
On Unix and AmigaDOS, SHELL is used for the shell command. On MSDOS,
COMSPEC is used for the shell command.
On AmigaDOS, GNUFONT is used for the screen font. For example:
"setenv GNUFONT sapphire/14".
On MSDOS, if the BGI interface is used, the variable BGI
is used to point
to the full path to the BGI drivers directory. Furthermore SVGA is used to
name the Super VGA BGI driver in 800x600 res., and its mode of operation
as 'Name.Mode'.
For example, if the Super VGA driver is C:\TC\BGI\SVGADRV.BGI and mode 3 is
used for 800x600 res., then: 'set BGI=C:\TC\BGI' and 'set SVGA=SVGADRV.3'.
In general, any mathematical expression accepted by C, FORTRAN,
Pascal, or BASIC is valid. The precedence of these operators is
determined by the specifications of the C programming language.
White space (spaces and tabs) is ignored inside expressions.
Complex constants may be expressed as {<real>,<imag>}, where
<real> and <imag> must be numerical constants. For example,
{3,2} represents 3 + 2i and {0,1} represents i
itself. The curly braces are explicitly required here.
The functions in GNUPLOT are the same as the corresponding functions
in the Unix math library, except that all functions accept integer,
real, and complex arguments, unless otherwise noted. The sgn
function is also supported, as in BASIC.
 Function  Arguments  Returns
 abs(x) any absolute value of x, x; same type
 abs(x) complex length of x
 acos(x) any inverse cosine in radians
 arg(x) complex the phase of x in radians
 asin(x) any inverse sin in radians
 atan(x) any inverse tangent in radians
 besj0(x) radians j_0 Bessel function of x
 besj1(x) radians j_1 Bessel function of x
 besy0(x) radians y_0 Bessel function of x
 besy1(x) radians y_1 Bessel function of x
 ceil(x) any smallest integer not less than x (real part)
 cos(x) radians cosine of x
 cosh(x) radians hyperbolic cosine of x
 erf(x) any error function of real(x)
 erfc(x) any 1.0  error function of real(x)
 exp(x) any exponential function of x
 floor(x) any largest integer not greater than x (real part)
 gamma(x) any gamma function of real(x)
 ibeta(p,q,x) any ibeta function of real(p,q,x)
 igamma(a,x) any igamma function of real(a,x)
 imag(x) complex imaginary part of x as a real number
 int(x) real integer part of x, truncated toward zero
 lgamma(x) any lgamma function of real(x)
 log(x) any natural logarithm (base e) of x
 log10(x) any logarithm (base 10) of x
 rand(x) any pseudo random number generator
 real(x) any real part of x
 sgn(x) any 1 if x > 0, 1 if x < 0,
0 if x = 0. imag(x) ignored
 sin(x) radians sine of x
 sinh(x) radians hyperbolic sine x
 sqrt(x) any square root of x
 tan(x) radians tangent of x
 tanh(x) radians hyperbolic tangent of x
The operators in GNUPLOT are the same as the corresponding operators
in the C programming language, except that all operators accept
integer, real, and complex arguments, unless otherwise noted.
The ** operator (exponentiation) is supported, as in FORTRAN.
Parentheses may be used to change order of evaluation.
The following is a list of all the binary operators and their
usages:
 Symbol Example Explanation
 ** a**b exponentiation
 * a*b multiplication
 / a/b division
 % a%b modulo
 + a+b addition
  ab subtraction
 == a==b equality
 != a!=b inequality
 & a&b * bitwise AND
 ^ a^b * bitwise exclusive OR
  ab * bitwise inclusive OR
 && a&&b * logical AND
  ab * logical OR
 ?: a?b:c * ternary operation
(*) Starred explanations indicate that the operator requires
integer arguments.
Logical AND (&&) and OR () shortcircuit the way they do in C.
That is, the second && operand is not evaluated if the first is
false; the second  operand is not evaluated if the first is true.
The ternary operator evaluates its first argument (a). If it is
true (nonzero) the second argument (b) is evaluated and returned,
otherwise the third argument (c) is evaluated and returned.
The following is a list of all the unary operators and their
usages:
 Symbol Example Explanation
  a unary minus
 ~ ~a * one's complement
 ! !a * logical negation
 ! a! * factorial
(*) Starred explanations indicate that the operator requires an
integer argument.
The factorial operator returns a real number to allow a greater range.
____________________
Burkhard Kirste,
1993/06/26.