R/intersect_points.R
intersect_points.Rd
Intersect environmental or contextual layers at a given a set of points (coordinates)
intersect_points( pnts, layers, SPdata.frame = FALSE, use_layer_names = TRUE, verbose = sbdi_config()$verbose )
pnts | numeric: vector of latitude/longitude pairs, or a 2 column data.frame or matrix of lat,lons. NOTE: the number of locations must be less than 1000. |
---|---|
layers | string vector: ids of layers to be intersected. The list of possible layers is available from |
SPdata.frame | logical: should the output should be returned as a SpatialPointsDataFrame of the sp package or simply as a data.frame? |
use_layer_names | logical: if TRUE, layer names will be used as column names in the returned data frame (e.g. "radiationLowestPeriodBio22"). Otherwise, layer id value will be used for column names (e.g. "el871") |
verbose | logical: show additional progress information? [default is set by |
A SpatialPointsDataFrame containing the intersecting data information. Missing data or incorrectly identified layer id values will result in NA data
The associated SBDI web service: https://api.biodiversitydata.se/#ws84
Descriptions of the spatial layers: https://spatial.biodiversitydata.se/layers/
This function allows the user to sample environmental/contextual layers at arbitrary locations. It complements
the occurrences
function, which allows values of the same set of layers to be downloaded at
species occurrence locations.
NOTE: batch requests (multiple points) are currently processed in a *single queue* on the SBDI servers. Processing times may be slow if there are many requests in the queue. Note also that the actual processing of batch requests is inherently slow: a large number of points may take quite some time. Be warned.
if (FALSE) { # single point with multiple layers layers <- c('el10016','el10009') pnts <- c(51.5074,0.1278) intersect_points(pnts,layers) # equivalent direct web service call: # https://spatial.biodiversitydata.se/ws/intersect/el10016,el10009/51.5074/0.1278 # multiple points as a grid sampling multiple layers pnts <- data.frame(expand.grid(lat=seq(51.5074,52.5074), lon=seq(0.1278,0.1278))) intersect_points(pnts,layers) }