View source: R/densityfunlpp.R
densityfun.lpp | R Documentation |
Computes a kernel estimate of the intensity of a point process on a linear network, and returns the intensity estimate as a function of spatial location.
## S3 method for class 'lpp' densityfun(X, sigma, ..., weights=NULL, nsigma=1, verbose=FALSE)
X |
Point pattern on a linear network
(object of class |
sigma |
Bandwidth of kernel (standard deviation of Gaussian kernel),
in the same units of length as |
... |
Arguments passed to |
weights |
Optional numeric vector of weights associated
with the points of |
nsigma |
Integer. The number of different bandwidths for which a result
should be returned.
If |
verbose |
Logical value indicating whether to print progress reports. |
Kernel smoothing is applied to the points of X
using the diffusion algorithm of McSwiggan et al (2016).
The result is a function on the linear network
(object of class "linfun"
) that can be printed, plotted
and evaluated at any location.
This is a method for the generic function
densityfun
for the class
"lpp"
of point patterns on a linear network.
Function on a linear network (object of class "linfun"
).
If nsigma=1
(the default), the result is a function giving
kernel estimate with bandwidth sigma
.
If nsigma > 1
, the result is a function
with an additional argument k
. If k
is specified,
the function returns the kernel estimate for
bandwidth tau = sigma * sqrt(k/nsigma)
.
If k
is not specified, results are returned
for all k = 1, 2, ..., nsigma
.
The result also has attributes
attr(result, "dt")
giving the
time step Delta t;
attr(result, "dx")
giving the spacing Delta x
between sample points in the numerical algorithm;
attr(result, "sigma")
giving the smoothing bandwidth sigma used
(or the successive bandwidths used at each sampled time step,
if nsigma > 1
).
Greg McSwiggan, with tweaks by \adrian.
McSwiggan, G., Baddeley, A. and Nair, G. (2016) Kernel Density Estimation on a Linear Network. Scandinavian Journal of Statistics 44, 324–345.
density.lpp
which returns a pixel image
on the linear network.
methods.linfun
for methods applicable to
"linfun"
objects.
X <- unmark(chicago) # single bandwidth g <- densityfun(X, 30) plot(g) Y <- X[1:5] g(Y) # weighted gw <- densityfun(X, 30, weights=runif(npoints(X))) # sequence of bandwidths g10 <- densityfun(X, 30, nsigma=10) g10(Y, k=10) g10(Y) plot(as.linim(g10, k=5))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.