Apply an area-of-habitat (AOH) refinement to a binary or fractional range
estimate using land-use or habitat layers already expressed as area per cell.
Use this method when lu values are continuous areal units such as
km2. For cell shares or suitability weights in [0, 1], use
insights_fraction() instead.
If lu has multiple layers or attributes, they are summed before being
applied to the range. Optional other layers can be supplied as
additional suitability or condition masks, but they must already be scaled to
[0, 1]; raw environmental layers such as elevation should be converted
to a suitability mask before calling this function.
Raster inputs are reprojected, cropped, and resampled to the range geometry
when needed. Temporal stars inputs may use a time or Time
dimension name. If outfile is supplied, the extension is adjusted to
.tif for raster output or .nc for stars output.
Usage
insights_area(range, lu, other, outfile = NULL)
# S4 method for class 'SpatRaster,SpatRaster'
insights_area(range,lu,other,outfile)
# S4 method for class 'SpatRaster,stars'
insights_area(range,lu,other,outfile)
# S4 method for class 'stars,stars'
insights_area(range,lu,other,outfile)
# S4 method for class 'stars,SpatRaster'
insights_area(range,lu,other,outfile)
# S4 method for class 'ANY,ANY'
insights_area(range,lu,other,outfile)Arguments
- range
A
SpatRasteror temporalstarsobject describing the estimated distribution of a biodiversity feature (e.g. species). Values must be binary or fractional in[0, 1]. Alternatively aDistributionModelfitted withibis.iSDMpackage can be supplied.- lu
A
SpatRasteror temporalstarsobject of the future land-use areas to be applied to the range. Each layer has to be in area units and greater than or equal to 0. Multi-layer inputs are summed.- other
Optional
SpatRasteror temporalstarsobject describing additional suitable conditions for the species. Values must already be suitability weights in[0, 1].- outfile
A writeable
characterof where the output should be written to. If missing, the function will return aSpatRasterorstarsobject respectively. Missing.tifor.ncextensions are added as needed.
Value
Either a SpatRaster or temporal stars object or nothing if outputs are written directly to drive.
Note
This function does not infer species-habitat relationships from raw land-use
classes. Select, weight, or transform land-use and condition layers before
calling insights_area().
No checks are conducted on whether supplied area layers add up to the area
of a grid cell.
References
Rondinini, Carlo, and Piero Visconti. "Scenarios of large mammal loss in Europe for the 21st century." Conservation Biology 29, no. 4 (2015): 1028-1036.
Visconti, Piero, Michel Bakkenes, Daniele Baisero, Thomas Brooks, Stuart HM Butchart, Lucas Joppa, Rob Alkemade et al. "Projecting global biodiversity indicators under future development scenarios." Conservation Letters 9, no. 1 (2016): 5-13.
Examples
require(terra)
range <- terra::rast(system.file(
"extdata/example_range.tif", package = "ibis.insights", mustWork = TRUE
))
lu_fraction <- terra::rast(system.file(
"extdata/Grassland.tif", package = "ibis.insights", mustWork = TRUE
)) / 10000
# Convert a fractional land-use layer to area per cell in km2.
lu_km2 <- lu_fraction * terra::cellSize(lu_fraction, unit = "km")
out <- insights_area(range = range, lu = lu_km2)
# The output is already in area units, so do not multiply by cell area again.
insights_summary(out, toArea = FALSE)
#> time suitability unit
#> 1 NA 37341.62 input
