surveillance (version 1.12.1)

poly2adjmat: Derive Adjacency Structure of "SpatialPolygons"

Description

Wrapping around functionality of the spdep package, this function computes the symmetric, binary (0/1), adjacency matrix from a "SpatialPolygons" object. It essentially applies nb2mat(poly2nb(SpP, ...), style="B", zero.policy=zero.policy).

Usage

poly2adjmat(SpP, ..., zero.policy = TRUE)

Arguments

SpP
an object inheriting from "SpatialPolygons-class".
...
arguments passed to poly2nb.
zero.policy
logical indicating if islands are allowed, see nb2mat.

Value

  • a symmetric numeric indicator matrix of size length(SpP)^2 representing polygon adjacencies.

See Also

poly2nb in package spdep

Examples

Run this code
if (requireNamespace("spdep")) {
    ## generate adjacency matrix for districts of Bayern and Baden-Wuerttemberg
    data("fluBYBW")
    adjmat <- poly2adjmat(fluBYBW@map)

    ## same as already stored in the neighbourhood slot (in different order)
    stopifnot(all.equal(adjmat,
                        neighbourhood(fluBYBW)[rownames(adjmat),colnames(adjmat)]))

    ## the neighbourhood graph can be plotted with spdep
    plot(spdep::mat2listw(adjmat), coordinates(fluBYBW@map))
}

Run the code above in your browser using DataCamp Workspace