Description Usage Arguments Value See Also Examples
This is a fast implementation of raster::mask()
. It masks values in a Raster object according to values in another Raster or polygon layer. Note that this function might sometimes be slower than raster::mask()
when the mask is a Raster. Largest speed gains occur for polygon masks.
1 |
ras |
Raster* object. |
mask |
Raster* object or POLYGON/MULTIPOLYGON |
inverse |
Logical. If TRUE, areas in |
updatevalue |
Convert all masked cells in |
Raster* object
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | library(raster)
size <- 100
ras <- raster(ncol = size, nrow = size, vals = rep(1, size*size))
msk <- raster(ncol = size, nrow = size, vals = runif(size*size))
msk[msk < 0.5] <- NA
# Using raster as mask
system.time(ras.masked <- raster::mask(ras, msk))
system.time(ras.masked <- fast_mask(ras, msk))
plot(ras)
plot(msk)
plot(ras.masked)
# Using polygon layer as mask
msk.sp <- as(msk, 'SpatialPolygonsDataFrame')
msk.sf <- sf::st_as_sf(msk.sp)
system.time(ras.masked <- raster::mask(ras, msk.sp))
system.time(ras.masked <- raster::mask(ras, msk.sf))
system.time(ras.masked <- fast_mask(ras, msk.sf))
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.