Learn R Programming

secr (version 5.0.0)

raster: Create a RasterLayer Object from Mask or Dsurface

Description

Methods to convert secr object to a RasterLayer object.

Usage

# S4 method for mask
raster(x, covariate, values = 1, crs = NA)

# S4 method for Dsurface raster(x, covariate, values = 1, crs = NA) # S4 method for mask rast(x, covariate, values = 1, crs = "") # S4 method for Dsurface rast(x, covariate, values = 1, crs = "")

Value

RasterLayer (raster)

SpatRaster (rast)

Arguments

x

mask or Dsurface object

covariate

character name of covariate to provide values for RasterLayer

values

numeric values for RasterLayer

crs

character or object of class CRS. Optional PROJ.4 type description of a Coordinate Reference System (map projection).

Details

There are two ways to specify the values to be used. If covariate is provided then the values of the corresponding covariate of the mask or Dsurface are used. Otherwise, values is duplicated to the required number of rows.

The resulting RasterLayer may optionally include a PROJ.4 map projection defined via crs. The specification may be very simple (as in the example below) or complex, including an explicit datum and other arguments. Projections are used by sf, terra, raster, sp and other packages. See raster for further explanation and links.

The S3 classes `mask' and `Dsurface' are defined in secr as virtual S4 classes. This enables these extensions to the list of S4 methods defined in raster and terra.

Although these methods work `standalone', it is currently necessary to load the terra or raster package to do much with the result (e.g., plot it).

See Also

Examples

Run this code

if (FALSE) {

shorePossums <- predictDsurface(possum.model.Ds)
tmp <- raster(shorePossums, covariate = "D.0")
library(raster)
plot(tmp, useRaster = FALSE)

## alternative with same result
tmp <- raster(shorePossums, values = covariates(shorePossums)$D.0)

## set the projection
## here the crs PROJ.4 spec refers simply to the old NZ metric grid
tmp <- raster(shorePossums, "D.0", crs = "+proj=nzmg")
## check the projection
proj4string(tmp)
     
# mask to rast
dtsrast <- rast(possummask, covariate = 'd.to.shore')
plot(dtsrast)

# Dsurface to rast
class(shorePossums) <- c('mask', 'data.frame') # or change "mask" to "Dsurface" above
Drast <- rast(shorePossums, covariate = 'D.0')
plot(Drast)

}

Run the code above in your browser using DataLab