# plot.fv

##### Plot Function Values

Plot method for the class `"fv"`

.

##### Usage

```
## S3 method for class 'fv':
plot(x, fmla, \dots, subset=NULL, lty=NULL, col=NULL, lwd=NULL,
xlim=NULL, ylim=NULL, xlab=NULL, ylab=NULL, ylim.covers=NULL,
legend=!add, legendpos="topleft", legendavoid=missing(legendpos),
legendmath=TRUE, legendargs=list(),
shade=NULL, shadecol="grey", add=FALSE, log="", limitsonly=FALSE)
```

##### Arguments

- x
- An object of class
`"fv"`

, containing the variables to be plotted or variables from which the plotting coordinates can be computed. - fmla
- an R language formula determining which variables or expressions are plotted. Either a formula object, or a string that can be parsed as a formula. See Details.
- subset
- (optional) subset of rows of the data frame that will be plotted.
- lty
- (optional) numeric vector of values of the graphical parameter
`lty`

controlling the line style of each plot. - col
- (optional) numeric vector of values of the graphical parameter
`col`

controlling the colour of each plot. - lwd
- (optional) numeric vector of values of the graphical parameter
`lwd`

controlling the line width of each plot. - xlim
- (optional) range of x axis
- ylim
- (optional) range of y axis
- xlab
- (optional) label for x axis
- ylab
- (optional) label for y axis
- ...
- Extra arguments passed to
`plot.default`

. - ylim.covers
- Optional vector of $y$ values that must be included in the
$y$ axis. For example
`ylim.covers=0`

will ensure that the $y$ axis includes the origin. - legend
- Logical flag or
`NULL`

. If`legend=TRUE`

, the algorithm plots a legend in the top left corner of the plot, explaining the meaning of the different line types and colours. - legendpos
- The position of the legend. Either a character string keyword
(see
`legend`

for keyword options) or a pair of coordinates in the format`list(x,y)`

. Alternatively if`legend`

- legendavoid
- Whether to avoid collisions between the legend and the graphics.
Logical value.
If
`TRUE`

, the code will check for collisions between the legend box and the graphics, and will override`legendpos`

if a collision occur - legendmath
- Logical. If
`TRUE`

, the legend will display the mathematical notation for each curve. If`FALSE`

, the legend text is the identifier (column name) for each curve. - legendargs
- Named list containing additional arguments to be passed to
`legend`

controlling the appearance of the legend. - shade
- An index that identifies two columns of
`x`

. When the corresponding curves are plotted, the region between the curves will be shaded in light grey. Often used for displaying simulation envelopes, by setting`shade=c("hi",`

- shadecol
- The colour to be used in the
`shade`

plot. A character string or an integer specifying a colour. - add
- Logical. Whether the plot should be added to an existing plot
- log
- A character string which contains
`"x"`

if the x axis is to be logarithmic,`"y"`

if the y axis is to be logarithmic and`"xy"`

or`"yx"`

if both axes are to be logarithmic. - limitsonly
- Logical. If
`FALSE`

, plotting is performed normally. If`TRUE`

, no plotting is performed at all; just the $x$ and $y$ limits of the plot are computed and returned.

##### Details

This is the `plot`

method for the class `"fv"`

.

The use of the argument `fmla`

is like `plot.formula`

, but offers
some extra functionality.

The left and right hand sides of `fmla`

are evaluated,
and the results are plotted against each other
(the left side on the $y$ axis
against the right side on the $x$ axis).

The left and right hand sides of `fmla`

may be
the names of columns of the data frame `x`

,
or expressions involving these names. If a variable in `fmla`

is not the name of a column of `x`

, the algorithm will search for
an object of this name in the environment where `plot.fv`

was
called, and then in the enclosing environment, and so on.

Multiple curves may be specified by a single formula
of the form
`cbind(y1,y2,...,yn) ~ x`

, where `x,y1,y2,...,yn`

are
expressions involving the variables in the data frame.
Each of the variables `y1,y2,...,yn`

in turn will be plotted
against `x`

.
See the examples.

Convenient abbreviations which can be used in the formula are

- the symbol
`.`

which represents all the columns in the data frame that will be plotted by default; - the symbol
`.x`

which represents the function argument; - the symbol
`.y`

which represents the recommended value of the function.

`fvnames`

.The value returned by this plot function indicates the meaning of the line types and colours in the plot. It can be used to make a suitable legend for the plot if you want to do this by hand. See the examples.

The argument `shade`

can be used to display critical bands
or confidence intervals. If it is not `NULL`

, then it should be
a subset index for the columns of `x`

, that identifies exactly
2 columns. When the corresponding curves are plotted, the region
between the curves will be shaded in light grey. See the Examples.

The default values of `lty`

, `col`

and `lwd`

can
be changed using `spatstat.options("plot.fv")`

.

Use `type = "n"`

to create the plot region and draw the axes
without plotting any data.

Use `limitsonly=TRUE`

to suppress all plotting
and just compute the $x$ and $y$ limits. This can be used
to calculate common $x$ and $y$ scales for several plots.

##### Value

- Either
`NULL`

, or a data frame giving the meaning of the different line types and colours.

##### See Also

##### Examples

```
K <- Kest(cells)
# K is an object of class "fv"
plot(K, iso ~ r) # plots iso against r
plot(K, sqrt(iso/pi) ~ r) # plots sqrt(iso/r) against r
plot(K, cbind(iso,theo) ~ r) # plots iso against r AND theo against r
plot(K, . ~ r) # plots all available estimates of K against r
plot(K, sqrt(./pi) ~ r) # plots all estimates of L-function
# L(r) = sqrt(K(r)/pi)
plot(K, cbind(iso,theo) ~ r, col=c(2,3))
# plots iso against r in colour 2
# and theo against r in colour 3
plot(K, iso ~ r, subset=quote(r < 0.2))
# plots iso against r for r < 10
# Can't remember the names of the columns? No problem..
plot(K, sqrt(./pi) ~ .x)
# making a legend by hand
v <- plot(K, . ~ r, legend=FALSE)
legend("topleft", legend=v$meaning, lty=v$lty, col=v$col)
# significance bands
KE <- envelope(cells, Kest, nsim=19)
plot(KE, shade=c("hi", "lo"))
# how to display two functions on a common scale
Kr <- Kest(redwood)
a <- plot(K, limitsonly=TRUE)
b <- plot(Kr, limitsonly=TRUE)
xlim <- range(a$xlim, b$xlim)
ylim <- range(a$ylim, b$ylim)
opa <- par(mfrow=c(1,2))
plot(K, xlim=xlim, ylim=ylim)
plot(Kr, xlim=xlim, ylim=ylim)
par(opa)
```

*Documentation reproduced from package spatstat, version 1.36-0, License: GPL (>= 2)*