.BG
.FN par
.TL
Graphical Parameters
.CS
par(...)
.AG ...
arguments that set parameters or query parameter values.
Named arguments cause the parameters
of the same name to be set to the specified value.
Parameters can also be set by a single, unnamed argument
that is a list
containing components whose names
match graphical parameter names given below.
.PP
Current values of graphical parameters may be queried by calling
`par' with any number of character vectors as unnamed arguments.
In this case, `par' returns a list of the corresponding parameter values.
Then a later call to `par' with this list as argument resets the
parameter values.
If only a single character argument is given, `par' returns
an atomic vector with the values of that parameter.
.PP
If `par' is given no argument, it returns a list of all current
parameter values.
.PP
Graphical parameters may be set by the `par' function or
by giving them as named arguments to other graphics functions.
When given through `par', the graphical parameters are set until
changed or until the end of the session;
otherwise, they are reset at the end of the function call in which
they were specified.
.RT
a list is returned
giving the values of the parameters named in the arguments.
The `names' attribute of the list gives the names of the parameters.
Such a list may be given as input to a later invocation of `par'.
An exception is that the returned value is an atomic vector
if the only argument was a single character value.
If parameter values were set, then the returned list is invisible.
.EX
par(mfrow=c(2,2),mar=rep(3,4))  # 2x2 array of figures
   # on the page, with 3 lines of margin around each
plot(x,y,col=3,pch=".")  # plot with specified color 
   # and plotting character
par(col=3,pch=".")  # permanent change of color and
   # plotting character
usr <- par("usr")   # numeric vector of user coordinates
.sp .5
oldpar <- par(tck=.02,las=1)  # set new values, remember old
par(oldpar)   # set parms back to remembered values
.sp .5
par()   # returns all current parameter values
.PP
In the following lists of parameters,
the notation `"c"' denotes one character,
`i', `j', `m', and `n' are integers,
`L' is a logical value, and `x' is numeric.
.SH GENERAL PARAMETERS
.PP
The following parameters can be used in any graphical functions,
including `par'.
.IP `adj=x'
string justification.  0 = left justify, 1 = right
justify, .5 = center.
.IP `bty="c"'
character representing the type of box.  Characters `o',
`l' (ell), `7', `c' will produce boxes which resemble the
corresponding upper-case letters.  The value `n' will
suppress boxes.
.IP `cex=x'
character expansion relative to device's standard size.  For
example, when `cex' = 2, characters are twice as big as
normal for the device.
.IP `col=x'
color, device dependent.
Default 1.  Generally, small integers are used to specify pen numbers
on pen plotters, color map indices on scope devices, etc.
Color 0 is background.
.IP `crt=x'
character rotation in degrees measured counterclockwise from
horizontal.  When `srt' is set, `crt' is automatically set
to the same value.
.IP `csi=x'
character height (interline space) in inches.
.IP `err=x'
error mode: \-1 = do not print graphics
error messages (points out of bounds, etc.), 0 = print
messages (the default).
.IP `font=i'
font number, device dependent.
Some devices allow this parameter to affect the font
in which text is displayed.
.IP `lab=c(x,y,llen)'
.br
desired number of tick intervals on the \f2x\fP and \f2y\fP axes
and the length of labels on both axes.
Default `c(5,5,7)'.
.IP `las=x'
style of axis labels.  0 = always parallel to axis (the default), 1 =
always horizontal, 2 = always perpendicular to axis.
.IP `lty=x'
line type, device dependent.  Normally type 1 is solid, 2
and up are dotted or dashed.
.IP `lwd=x'
line width, device dependent.  Width 1 is the standard
width for the device.
Many devices cannot change line width.
.IP `mgp=c(x1,x2,x3)'
.br
margin line for the
axis title, axis labels, and axis line.
Default is `c(3,1,0)'.
.IP `mkh=x'
height in inches of mark symbols drawn when `pch' is given as a number.
.IP `pch="c"'
the character to be used for plotting points.  If `pch' is a
period, a centered plotting dot is used.
.IP `pch=n'
the number of a plotting symbol to be drawn when plotting points.
See `lines' for a display of the plotting symbols.
.IP `smo=x'
smoothness of circles and other curves.  `smo' is the number
of rasters that the straight-line approximation to the curve
is allowed to differ from the exact position of the curve.
Large values produce more crude approximations to curves,
but allows the curves to be drawn with fewer line segments
and hence speeds up output.  The minimum number of line
segments that will be used for a circle is 8, regardless of
`smo'.
.IP `srt=x'
string rotation in degrees measured counterclockwise from
horizontal.  When specified, sets `crt' to same value.
.IP `tck=x'
the length of tick marks as a fraction of the smaller of the
width or height of the plotting region.  If `tck' is
negative, ticks are drawn outside of the plot region.  If
`tck' = `1', grid lines are drawn.
Default is `-.02'.
.IP `xaxp=c(ul,uh,n)'
.br
coordinates of lower tick mark `ul',
upper tick mark `uh', and number of intervals `n' within the
range from `ul' to `uh'.
.IP `xaxs="c"'
style of axis interval calculation.  The styles `"s"' and `"e"'
set up standard and extended axes, where numeric axis labels
are more extreme than any data values.
Extended axes may be extended another character width so
that no data points lie very near the axis limit.
Style `"i"'
creates an axis labelled internal to the data values.  This
style wastes no space, yet still gives pretty labels.
Style `"r"' extends the data range by 4% on each end, and then labels the
axis internally.  This ensures that all plots take up a fixed percent
of the plot region, yet keeps points away from the axes.
Style `"d"' is a direct axis, and axis parameters will not be
changed by further high-level plotting routines.  This is
used to "lock-in" an axis from one plot to the next.
Default is `"r"'.
.IP `xaxt="c"'
axis type.  Type `"n"' (null) can be used to cause an axis to
be set up by a high-level routine, but then not plotted.
.IP `xpd=L'
logical value controlling clipping.  `FALSE' means no
points or lines may be drawn outside of the plot region.
.Co TRUE
means points, lines, and text may be plotted outside of the
plot region as long as they are inside the figure region.
.IP `yaxp=c(ul,uh,n)'
see `xaxp'.
.IP `yaxs="c"'
see `xaxs'.
.IP `yaxt="c"'
see `xaxt'.
.SH LAYOUT PARAMETERS
.PP
The following parameters may only be used in function `par', because
they change the overall layout of plots or figures.
.IP `fig=c(x1,x2,y1,y2)'
.br
coordinates of figure region expressed as fraction of
device surface.
.IP `fin=c(w,h)'
.br
width and height of figure in inches.
.IP `mai=c(xbot,xlef,xtop,xrig)'
.br
margin size specified in inches.  Values given for
bottom, left, top, and right margins in that order.
.IP `mar=c(xbot,xlef,xtop,xrig)'
.br
lines of margin on each side of
plot.  Margin coordinates range from 0 at the edge of the
box outward in units of `mex' sized characters.  If the
margin is respecified by `mai' or `mar', the plot region is
re-created to provide the appropriate sized margins within
the figure.  Default value is `c(5,4,4,2)+.1'.
.IP `mex=x'
the coordinate unit for addressing locations in the
margin is expressed in terms of `mex'.  `mex' is a character
size relative to default character size (like `cex') and
margin coordinates are measured in terms of characters of
this size.
.IP `mfg=c(i,j,m,n)'
.br
multiple figure parameters which give the row and column
number of the current multiple figure and the number of rows
and columns in the current array of multiple figures.
.IP `mfrow=c(m,n)'
.br
subsequent figures will be drawn row-by-row
in an `m' by `n' matrix on the page.
.IP `mfcol=c(m,n)'
.br
subsequent figures will be drawn column-by-column
in an `m' by `n' matrix on the page.
.IP `new=L'
if `TRUE', the current plot is assumed to have no
previous plotting on it.
Any points, lines, or text will set `new' to `FALSE'.
.IP `oma=c(xbot,xlef,xtop,xrig)'
.br
outer margin lines of text.  `oma' provides the maximum value for
outer margin coordinates on each of the four sides of the
multiple figure region.  `oma' causes recreation of the
current figure within the confines of the newly specified
outer margins.
Default is `rep(0,4)'.
.IP `omd=c(x1,x2,y1,y2)'
.br
the region within the outer margins (which is to be used
by multiple figure arrays) is specified by `omd' as a
fraction of the entire device.
.IP `omi=c(xbot,xlef,xtop,xrig)'
.br
size of outer margins in inches.
.IP `pin=c(w,h)'
.br
width and height of plot, measured in inches.
.IP `plt=c(x1,x2,y1,y2)'
.br
the coordinates of the plot region measured as a
fraction of the figure region.
.IP `pty="c"'
the type of plotting region currently in effect.
Values: `"s"' generates a square plotting region; `"m"' (the default)
generates a maximal size plotting region, which, with the
margins, completely fills the figure region.
.IP `usr=c(x1,x2,y1,y2)'
.br
user coordinate min and max on \f2x\fP- and \f2y\fP-axes.
Default, when device is initialized, is `c(0,1,0,1)'.
.KW dplot
.KW hplot
.WR
