Diagnostic Plots for Fitted Point Process Model

Given a point process model fitted to a point pattern, produce diagnostic plots based on residuals.

diagnose.ppm(object, ..., type="raw", which="all", sigma=NULL, 
               rbord=reach(object), cumulative=TRUE,
               plot.it=TRUE, rv = NULL,
               compute.sd=is.poisson(object), compute.cts=TRUE,
               envelope=FALSE, nsim=39, nrank=1,
               typename, check=TRUE, repair=TRUE,
               oldstyle=FALSE, splineargs=list(spar=0.5))

## S3 method for class 'diagppm': plot(x, \dots, which, plot.neg=c("image", "discrete", "contour", "imagecontour"), plot.smooth=c("imagecontour", "image", "contour", "persp"), plot.sd, spacing=0.1, outer=3, srange=NULL, monochrome=FALSE, main=NULL)

The fitted point process model (an object of class "ppm") for which diagnostics should be produced. This object is usually obtained from ppm.
String indicating the type of residuals or weights to be used. Current options are "eem" for the Stoyan-Grabarnik exponential energy weights, "raw" for the raw residuals, "inverse" for the inverse-lam
Character string or vector indicating the choice(s) of plots to be generated. Options are "all", "marks", "smooth", "x", "y" and "sum". Multiple choices may be g
Bandwidth for kernel smoother in "smooth" option.
Width of border to avoid edge effects. The diagnostic calculations will be confined to those points of the data pattern which are at least rbord units away from the edge of the window.
Logical flag indicating whether the lurking variable plots for the $x$ and $y$ coordinates will be the plots of cumulative sums of marks (cumulative=TRUE) or the plots of marginal integrals of the smoothed residual field (
Logical value indicating whether plots should be shown. If plot.it=FALSE, the computed diagnostic quantities are returned without plotting them.
String indicating how the density part of the residual measure should be plotted.
String indicating how the smoothed residual field should be plotted.
Logical values indicating whether error bounds should be computed and added to the "x" and "y" plots. The default is TRUE for Poisson models and FALSE for non-Poisson models. See Details.
Arguments passed to lurking in order to plot simulation envelopes for the lurking variable plots.
Usually absent. Advanced use only. If this argument is present, the values of the residuals will not be calculated from the fitted model object but will instead be taken directly from rv.
The spacing between plot panels (when a four-panel plot is generated) expressed as a fraction of the width of the window of the point pattern.
The distance from the outermost line of text to the nearest plot panel, expressed as a multiple of the spacing between plot panels.
Vector of length 2 that will be taken as giving the range of values of the smoothed residual field, when generating an image plot of this field. This is useful if you want to generate diagnostic plots for two different fitted models using the
Flag indicating whether images should be displayed in greyscale (suitable for publication) or in colour (suitable for the screen). The default is to display in colour.
Logical value indicating whether to check the internal format of object. If there is any possibility that this object has been restored from a dump file, or has otherwise lost track of the environment where it was originally compu
Logical value indicating whether to repair the internal format of object, if it is found to be damaged.
Logical flag indicating whether error bounds should be plotted using the approximation given in the original paper (oldstyle=TRUE), or using the correct asymptotic formula (oldstyle=FALSE).
Argument passed to lurking to control the smoothing in the lurking variable plot.
The value returned from a previous call to diagnose.ppm. An object of class "diagppm".
String to be used as the name of the residuals.
Main title for the plot.
Extra arguments, controlling either the resolution of the smoothed image (passed from diagnose.ppm to density.ppp) or the appearance of the plots (passed from diagnose.pp
Advanced use only.

The function diagnose.ppm generates several diagnostic plots for a fitted point process model. The plots display the residuals from the fitted model (Baddeley et al, 2005) or alternatively the `exponential energy marks' (Stoyan and Grabarnik, 1991). These plots can be used to assess goodness-of-fit, to identify outliers in the data, and to reveal departures from the fitted model. See also the companion function qqplot.ppm.

The argument object must be a fitted point process model (object of class "ppm") typically produced by the maximum pseudolikelihood fitting algorithm ppm).

The argument type selects the type of residual or weight that will be computed. Current options are:

[object Object],[object Object]

The argument which selects the type of plot that is produced. Options are: [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

The argument rbord ensures there are no edge effects in the computation of the residuals. The diagnostic calculations will be confined to those points of the data pattern which are at least rbord units away from the edge of the window. The value of rbord should be greater than or equal to the range of interaction permitted in the model.

By default, the two-standard-deviation limits are calculated from the exact formula for the asymptotic variance of the residuals under the asymptotic normal approximation, equation (37) of Baddeley et al (2006). However, for compatibility with the original paper of Baddeley et al (2005), if oldstyle=TRUE, the two-standard-deviation limits are calculated using the innovation variance, an over-estimate of the true variance of the residuals.

The argument rv would normally be used only by experts. It enables the user to substitute arbitrary values for the residuals or marks, overriding the usual calculations. If rv is present, then instead of calculating the residuals from the fitted model, the algorithm takes the residuals from the object rv, and plots them in the manner appropriate to the type of residual or mark selected by type. If type ="eem" then rv should be similar to the return value of eem, namely, a numeric vector of length equal to the number of points in the original data point pattern. Otherwise, rv should be similar to the return value of residuals.ppm, that is, it should be an object of class "msr" (see msr) representing a signed measure.

The return value of diagnose.ppm is an object of class "diagppm". The plot method for this class is documented here. There is also a print method. See the Examples.

In plot.diagppm, if a four-panel diagnostic plot is produced (the default), then the extra arguments xlab, ylab, rlab determine the text labels for the $x$ and $y$ coordinates and the residuals, respectively. See also the companion functions qqplot.ppm, which produces a Q-Q plot of the residuals, and lurking, which produces lurking variable plots for any spatial covariate.


  • An object of class "diagppm" which contains the coordinates needed to reproduce the selected plots. This object can be plotted using plot.diagppm and printed using print.diagppm.


Baddeley, A., Turner, R., latex{Mller{Moller}, J. and Hazelton, M. (2005) Residual analysis for spatial point processes. Journal of the Royal Statistical Society, Series B 67, 617--666.

Baddeley, A., latex{Mller{Moller}, J. and Pakes, A.G. (2008) Properties of residuals for spatial point processes. Annals of the Institute of Statistical Mathematics 60, 627--649. Stoyan, D. and Grabarnik, P. (1991) Second-order characteristics for stochastic structures connected with Gibbs point processes. Mathematische Nachrichten, 151:95--100. } residuals.ppm, eem, ppm.object, qqplot.ppm, lurking, ppm fit <- ppm(cells ~x, Strauss(r=0.15)) diagnose.ppm(fit) diagnose.ppm(fit, type="pearson") diagnose.ppm(fit, which="marks") diagnose.ppm(fit, type="raw", plot.neg="discrete")

# save the diagnostics and plot them later u <- diagnose.ppm(fit, rbord=0.15, plot.it=FALSE) plot(u) plot(u, which="marks") [object Object],[object Object],[object Object] spatial models hplot

  • diagnose.ppm
  • plot.diagppm
Documentation reproduced from package spatstat, version 1.41-1, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.