mosaic {raster} | R Documentation |
Merge Raster* objects using a function for overlapping areas
Description
Mosaic Raster* objects to form a new object with a larger spatial extent. A function is used to compute cell values in areas where layers overlap (in contrast to the merge
function which uses the values of the 'upper' layer). All objects must have the same origin, resolution, and coordinate reference system.
Usage
## S4 method for signature 'Raster,Raster'
mosaic(x, y, ..., fun, tolerance=0.05, filename="")
Arguments
x |
Raster* object |
y |
Raster* object |
... |
Additional Raster or Extent objects (and/or arguments for writing files as in |
fun |
Function. E.g. mean, min, or max. Must be a function that accepts a 'na.rm' argument |
tolerance |
Numeric. permissible difference in origin (relative to the cell resolution). See |
filename |
Character. Output filename (optional) |
Details
The Raster objects must have the same origin and resolution.
Value
RasterLayer or RasterBrick object.
See Also
Examples
r <- raster(ncol=100, nrow=100)
r1 <- crop(r, extent(-10, 11, -10, 11))
r2 <- crop(r, extent(0, 20, 0, 20))
r3 <- crop(r, extent(9, 30, 9, 30))
values(r1) <- 1:ncell(r1)
values(r2) <- 1:ncell(r2)
values(r3) <- 1:ncell(r3)
m1 <- mosaic(r1, r2, r3, fun=mean)
s1 <- stack(r1, r1*2)
s2 <- stack(r2, r2/2)
s3 <- stack(r3, r3*4)
m2 <- mosaic(s1, s2, s3, fun=min)
# if you have a list of Raster objects, you can use do.call
x <- list(r1, r2, r3)
names(x)[1:2] <- c('x', 'y')
x$fun <- mean
x$na.rm <- TRUE
y <- do.call(mosaic, x)
[Package raster version 3.6-26 Index]