grid2nb function

Construct neighbours for a GridTopology

Construct neighbours for a GridTopology

The function builds a neighbours list for a grid topology. It works for a k-dimentional grid topology, k>=1.

grid2nb(grid, d = grid@cells.dim, queen = TRUE, nb = TRUE, self = FALSE)

Arguments

  • grid: An object of class GridTopology. One can avoid to supply this by just suplying the dimentions in the d argument.
  • d: A scalar (for one dimentional grid) or a length k vector specyfying the number of grid cells in each direction of the k dimentions.
  • queen: Logical. Default is TRUE. To inform if the queen neighbourhood structure should be considered. If FALSE, only a hyper-cube with a common face will be considered neighbour. If TRUE, a single shared coordinate meets the contiguity condition.
  • nb: Default TRUE. If TRUE, return the result as a neighbours list with class nb. If FALSE, the result is a matrix with 3^k columns if self = TRUE or 3^k-1 if self = FALSE. Zeros are used for hyper-cubes at boundaries.
  • self: Default FALSE, to indicate if the hyper-cube neighbour itself should be considered a neighbour.

Returns

Either a matrix, if nb is FALSE or a neighbours list with class nb. See card for details of nb

objects.

Note

This applies to a k-dimentional grid topology.

Author(s)

Elias T Krainski eliaskrainski@gmail.com

See Also

poly2nb, summary.nb, card

Examples

nb <- grid2nb(d = c(5L, 5L, 5L)) nb summary(nb) if (require("sp", quietly=TRUE)) { gt <- GridTopology(c(.125,.1), c(.25,.2), c(4L, 5L)) nb1 <- grid2nb(gt, queen = FALSE) nb2 <- grid2nb(gt) sg <- SpatialGrid(gt) plot(sg, lwd=3) plot(nb1, coordinates(sg), add=TRUE, lty=2, col=2, lwd=2) plot(nb2, coordinates(sg), add=TRUE, lty=3, col=4) str(grid2nb(d=5)) }