spatstat (version 1.25-5)

plot.fv: Plot Function Values

Description

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", legendmath=TRUE, legendargs=list(),
           shade=NULL, shadecol="grey", add=FALSE, 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).
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
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.

Value

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

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 in the data frame x, and the results are plotted against each other (the left side on the $y$ axis against the right side on the $x$ axis). Both left and right sides may be variables in the data frame or expressions in these variables.

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 variables in the data frame (other than the function argument itself);
  • the symbol.xwhich represents the function argument;
  • the symbol.ywhich represents the recommended value of the function.

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.

See Also

fv.object, Kest

Examples

Run this code
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)

Run the code above in your browser using DataCamp Workspace