library(terra)
r <- rast(
crs = "epsg:3857",
extent = c(0, 10, 0, 10),
nlyr = 3,
resolution = c(2.5, 2.5)
)
terra::values(r) <- seq_len(ncell(r) * nlyr(r))
# Add NAs
r[r > 13 & r < 22 | r > 31 & r < 45] <- NA
# Init
plot(r, nc = 3)
# Mask with lyr.1
r %>%
drop_na(lyr.1) %>%
plot(nc = 3)
# Mask with lyr.2
r %>%
drop_na(lyr.2) %>%
plot(nc = 3)
# Mask with lyr.3
r %>%
drop_na(lyr.3) %>%
plot(nc = 3)
# Auto-mask all layers
r %>%
drop_na() %>%
plot(nc = 3)
Run the code above in your browser using DataLab