View source: R/CalcRangeSize.R
CalcRangeSize | R Documentation |
Approximate species range size from occurrence records. Implements various methods, including Extent of Occurrence (EOO) based on planar or spherical convex hulls, Area of Occupancy (AOO), maximum and quantile distance between occurrences as well as WWF ecoregions. Can be used to inform for criterion B of the IUCN red list classification using IUCNest
.
CalcRangeSize(x, method = "eoo_pseudospherical", terrestrial = FALSE,
biome = NULL, eco = NULL, convex.reps = 1,
convex.repfrac = 1, convex.repsize = NULL,
convex.rare = "buffer", convex.buffer.width = 10000,
aoo.reps = 3, aoo.proj = NULL,
aoo.gridsize = NULL, verbose = FALSE)
x |
a |
method |
a character string, defining the method for range size approximation one of ‘eoo_euclidean’, ‘eoo_pseudospherical’, ‘aoo’, ‘maxdist’, ‘qdist’, ‘ecoregion’. See details. |
terrestrial |
logical. If TRUE the polygons are restricted to terrestrial area as in |
biome |
A |
eco |
A |
convex.reps |
numeric. The number of subsampling rounds for the convex hull calculation. See details. |
convex.repfrac |
numeric. The fraction of occurrence points (from the total number of occurrence points available in x for this species) to be used for convex hull calculation. See details. |
convex.repsize |
numeric. The number of occurrence points (from the total number of occurrence points available in x for this species) to be used for convex hull calculation. See details. |
convex.rare |
character string. Details how to deal with species with less <3 occurrence records for the convex hull methods. One of ‘buffer’ or ‘drop’. If buffer a geographic buffer with width |
convex.buffer.width |
numeric. The size of the buffer for |
aoo.gridsize |
numeric. The area of the grid cells used for the AOO calculation in units of aoo.proj or in meter if aoo.proj == NULL. Following the IUCN recommendations the default is to 4 square kilometres. |
aoo.proj |
A |
aoo.reps |
integer. The number of replicates for the AOO calculation. See details. Default = 3. |
verbose |
If TRUE, status will be reported. |
If method == 'eoo_euclidean'
, the range size is approximated as the area of a euclidean convex hull assuming planar coordinates in sqkm. The convex.reps
option sets the number of replicates with convex.repfrac
or convex.repsize
points drawn randomly from the records available for each species. If convex.reps == 1
and convex.repfrac == 1
no replication is performed and all records are used for the convexhull. If convex.repfrac
and convex.repsize
are defined, convex.repfrac
has priority. If method == 'eoo_pseudospherical'
, as above, except that a spherical convex hull is used, based on the geosphere package. If method == 'aoo'
the area of occupancy is calculated using rasterization. If method == 'ecoregion'
, the ranges size is calculated as the total area of all WWF ecoregions with at least one occurrence of the species. If method == 'maxdist'
, the range size is approximated by the overall maximum distance (on a sphere) of all distances among the occurrence records per species in km. If method == 'qdist'
the range size is approximated by the 25 and 75 quantiles of the maximum of all distances among the occurrence records per species in km. The default for aoo.proj is to CRS("+proj=cea +lon_0=0 +lat_ts=30 +x_0=0 +y_0=0 +a=6371228 +b=6371228 +units=m +no_defs")
Be careful with the polygons when using lat/long data, convex hulls on a sphere are not easily defined. The function is limited to occurrence records on one hemisphere, spanning less than 180 degrees longitude and not crossing the 180/0 boundary!
If method == euclidean
, planar (projected, or local scale) coordinates are expected. If method == ‘pseudospherical’ the geosphere::makePoly
is used to define the convex hull. In the latter case, to create the polygon intermediate points are added on a sphere between two coordinates.
A data.frame
of range sizes in skqm, or distance in km (for methods ‘qdist’ and ‘maxdist’).
See https://github.com/azizka/speciesgeocodeR/wiki for more details and tutorials.
occ.exmpl<- data.frame(species = sample(letters, size = 250, replace = TRUE),
decimallongitude = runif(n = 250, min = 42, max = 51),
decimallatitude = runif(n = 250, min = -26, max = -11))
CalcRangeSize(occ.exmpl, method = 'eoo_pseudospherical', terrestrial = FALSE,
convex.reps = 2)
CalcRangeSize(occ.exmpl, method = 'maxdist', terrestrial = FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.