Learn R Programming

spatstat.explore (version 3.2-3)

pairorient: Point Pair Orientation Distribution

Description

Computes the distribution of the orientation of vectors joining pairs of points at a particular range of distances.

Usage

pairorient(X, r1, r2, ..., cumulative=FALSE,
           correction, ratio = FALSE,
           unit=c("degree", "radian"), domain=NULL)

Value

A function value table (object of class "fv") containing the estimates of the probability density or the cumulative distribution function of angles, in degrees (if unit="degree") or radians (if unit="radian").

Arguments

X

Point pattern (object of class "ppp").

r1,r2

Minimum and maximum values of distance to be considered.

...

Arguments passed to circdensity to control the kernel smoothing, if cumulative=FALSE.

cumulative

Logical value specifying whether to estimate the probability density (cumulative=FALSE, the default) or the cumulative distribution function (cumulative=TRUE).

correction

Character vector specifying edge correction or corrections. Options are "none", "isotropic", "translate", "border", "bord.modif", "good" and "best". Alternatively correction="all" selects all options. The default is to compute all edge corrections except "none".

ratio

Logical. If TRUE, the numerator and denominator of each edge-corrected estimate will also be saved, for use in analysing replicated point patterns.

unit

Unit in which the angles should be expressed. Either "degree" or "radian".

domain

Optional window. The first point \(x_i\) of each pair of points will be constrained to lie in domain.

Author

Adrian Baddeley Adrian.Baddeley@curtin.edu.au, Rolf Turner r.turner@auckland.ac.nz and Ege Rubak rubak@math.aau.dk.

Details

This algorithm considers all pairs of points in the pattern X that lie more than r1 and less than r2 units apart. The direction of the arrow joining the points is measured, as an angle in degrees or radians, anticlockwise from the \(x\) axis.

If cumulative=FALSE (the default), a kernel estimate of the probability density of the orientations is calculated using circdensity.

If cumulative=TRUE, then the cumulative distribution function of these directions is calculated. This is the function \(O_{r1,r2}(\phi)\) defined in Stoyan and Stoyan (1994), equation (14.53), page 271.

In either case the result can be plotted as a rose diagram by rose, or as a function plot by plot.fv.

The algorithm gives each observed direction a weight, determined by an edge correction, to adjust for the fact that some interpoint distances are more likely to be observed than others. The choice of edge correction or corrections is determined by the argument correction. See the help for Kest for details of edge corrections, and explanation of the options available. The choice correction="none" is not recommended; it is included for demonstration purposes only. The default is to compute all corrections except "none".

It is also possible to calculate an estimate of the probability density from the cumulative distribution function, by numerical differentiation. Use deriv.fv with the argument Dperiodic=TRUE.

References

Stoyan, D. and Stoyan, H. (1994) Fractals, Random Shapes and Point Fields: Methods of Geometrical Statistics. John Wiley and Sons.

See Also

Kest, Ksector, nnorient

Examples

Run this code
  rose(pairorient(redwood, 0.05, 0.15, sigma=8), col="grey")
  plot(CDF <- pairorient(redwood, 0.05, 0.15, cumulative=TRUE))
  plot(f <- deriv(CDF, spar=0.6, Dperiodic=TRUE))

Run the code above in your browser using DataLab