Function to calculate direct neighbors for each hexagon/rectangle in a grid

Description

sNeighDirect is supposed to calculate direct neighbors for each hexagon/rectangle in a regular 2D grid. It returns a matrix with rows for the self, and columns for its direct neighbors.

Usage

sNeighDirect(sObj)

Arguments

sObj
an object of class "sTopol" or "sInit" or "sMap"

Value

  • dNeigh: a matrix of nHex x nHex, containing presence/absence info in terms of direct neighbors, where nHex is the total number of hexagons/rectanges in the grid

Note

The return matrix has rows for the self, and columns for its direct neighbors. The "1" means the presence of direct neighbors, "0" for the absence. It has rows/columns ordered in the same order as the "coord" matrix of the input object does.

Examples

# 1) generate an iid normal random matrix of 100x10 data <- matrix( rnorm(100*10,mean=0,sd=1), nrow=100, ncol=10) # 2) from this input matrix, determine nHex=5*sqrt(nrow(data))=50, # but it returns nHex=61, via "sHexGrid(nHex=50)", to make sure a supra-hexagonal grid sTopol <- sTopology(data=data, lattice="hexa", shape="suprahex") # 3) initialise the codebook matrix using "uniform" method sI <- sInitial(data=data, sTopol=sTopol, init="uniform") # 4) calculate direct neighbors based on different objects # 4a) based on an object of class "sTopol" dNeigh <- sNeighDirect(sObj=sTopol) # 4b) based on an object of class "sMap" # dNeigh <- sNeighDirect(sObj=sI)

Source code

sNeighDirect.r

Source man

sNeighDirect.Rd sNeighDirect.pdf

See also

sHexDist