distance_to | R Documentation |
Measures the distance from points x to features in layer y.
distance_to(x, y, measure = NULL)
x |
points to measure distances from, to layer |
y |
feature layer to measure distance to. Expecting an |
measure |
method used to measure geographic distances between longlat
|
Uses the function nabor::knn
to determine the distance from each point in x
to the nearest feature in layer y
. If the input CRS is longlat, eg. EPSG 4326,
the distance is returned as measured by geodist::geodist
. Otherwise, if the
input CRS indicates projected coordinates, the distance returned is the
euclidean distance. Both x
and y
are expected to be sf
objects and
the distances are returned as vector, easily added to input x
with $<-
or other methods. If y
is a 'POLYGON' or 'MULTIPOLYGON' object, the
distance returned for points in x
within features in y
are set to 0.
A vector
of distances from points in x
to features in layer y
.
# Load sf
library(sf)
# Load nc data
nc <- st_read(system.file("shape/nc.shp", package="sf"))
# Set number of sampling points
npts <- 1e3
# Note: package 'lwgeom' required for st_sample
if (require(lwgeom, quietly = TRUE)) {
# Sample points in nc
ncpts <- st_sample(nc, npts)
# Select first 5 of nc
ncsub <- nc[1:5,]
# Measure distance from ncpts to first 5 of nc, printing result
distance_to(ncpts, ncsub, measure = 'geodesic')
# or add to ncpts
ncpts$dist <- distance_to(ncpts, ncsub, measure = 'geodesic')
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.