# nnfun

0th

Percentile

##### Nearest Neighbour Index Map as a Function

Compute the nearest neighbour index map of an object, and return it as a function.

Keywords
spatial, math
##### Usage
nnfun(X, ...)  ## S3 method for class 'ppp':
nnfun(X, ..., k=1)  ## S3 method for class 'psp':
nnfun(X, ...)
##### Arguments
X
Any suitable dataset representing a two-dimensional collection of objects, such as a point pattern (object of class "ppp") or a line segment pattern (object of class "psp").
k
A single integer. The kth nearest neighbour will be found.
...
Extra arguments are ignored.
##### Details

For a collection $X$ of two dimensional objects (such as a point pattern or a line segment pattern), the nearest neighbour index function of $X$ is the mathematical function $f$ such that, for any two-dimensional spatial location $(x,y)$, the function value f(x,y) is the index $i$ identifying the closest member of $X$. That is, if $i = f(x,y)$ then $X[i]$ is the closest member of the collection $X$ to the location $(x,y)$. The command f <- nnfun(X) returns a function in the Rlanguage, with arguments x,y, that represents the nearest neighbour index function of X. Evaluating the function f in the form v <- f(x,y), where x and y are any numeric vectors of equal length containing coordinates of spatial locations, yields the indices of the nearest neighbours to these locations.

If the argument k is specified then the k-th nearest neighbour will be found.

The result of f <- nnfun(X) also belongs to the class "funxy" and to the special class "nnfun". It can be printed and plotted immediately as shown in the Examples. A nnfun object can be converted to a pixel image using as.im.

##### Value

• A function with arguments x,y. The function also belongs to the class "nnfun" which has a method for print. It also belongs to the class "funxy" which has methods for plot, contour and persp.

distfun, plot.funxy

• nnfun
• nnfun.ppp
• nnfun.psp
##### Examples
f <- nnfun(cells)
f
plot(f)
f(0.2, 0.3)

g <- nnfun(cells, k=2)
g(0.2, 0.3)

L <- psp(runif(10), runif(10), runif(10), runif(10), window=owin())
h <- nnfun(L)
h(0.2, 0.3)
Documentation reproduced from package spatstat, version 1.37-0, License: GPL (>= 2)

### Community examples

Looks like there are no examples yet.