R: Plot Function Values

plot.fv {spatstat.core} | R Documentation

## Plot Function Values

### Description

Plot method for the class `"fv"`.

### Usage

     ## S3 method for class 'fv'
    plot(x, fmla, ..., 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=fvnames(x, ".s"), shadecol="grey",
               add=FALSE, log="",
               mathfont=c("italic", "plain", "bold", "bolditalic"),
               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 `legendpos="float"`, a location will be selected inside the plot region, avoiding the graphics.
`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 occurs. If `FALSE`, the value of `legendpos` is always respected.
`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` | A character vector giving the names of two columns of `x`, or another type of index that identifies two columns. When the corresponding curves are plotted, the region between the curves will be shaded in light grey. The object `x` may or may not contain two columns which are designated as boundaries for shading; they are identified by `fvnames(x, ".s")`. The default is to shade between these two curves if they exist. To suppress this behaviour, set `shade=NULL`.
`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.
`mathfont` | Character string. The font to be used for mathematical expressions in the axis labels and the legend.
`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.

For further information, see `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.

To change the kind of parenthesis enclosing the explanatory text about the unit of length, use `spatstat.options('units.paren')`

### Value

Invisible: either `NULL`, or a data frame giving the meaning of the different line types and colours.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au

and Rolf Turner r.turner@auckland.ac.nz

### See Also

`fv.object`, `Kest`

### 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)

[Package spatstat.core version 1.65-5 Index]