Create a RasterBrick object

A RasterBrick is a multi-layer raster object. They are typically created from a multi-layer (band) file; but they can also exist entirely in memory. They are similar to a RasterStack (that can be created with stack), but processing time should be shorter when using a RasterBrick. Yet they are less flexible as they can only point to a single file.

A RasterBrick can be created from RasterLayer objects, from a RasterStack, or from a (multi-layer) file. The can also be created from SpatialPixels*, SpatialGrid*, and Extent objects, and from a three-dimensional array.

methods, spatial
# S4 method for character
brick(x, ...)

# S4 method for RasterStack brick(x, values=TRUE, nl, filename='', ...)

# S4 method for RasterBrick brick(x, nl, ...)

# S4 method for RasterLayer brick(x, ..., values=TRUE, nl=1, filename='')

# S4 method for missing brick(nrows=180, ncols=360, xmn=-180, xmx=180, ymn=-90, ymx=90, nl=1, crs)

# S4 method for Extent brick(x, nrows=10, ncols=10, crs=NA, nl=1)

# S4 method for array brick(x, xmn=0, xmx=1, ymn=0, ymx=1, crs=NA, transpose=FALSE)

# S4 method for big.matrix brick(x, template, filename='', ...)

# S4 method for SpatialGrid brick(x)

# S4 method for SpatialPixels brick(x)


character (filename, see Details); Raster* object; missing; array; SpatialGrid*; SpatialPixels*; Extent; or list of Raster* objects. Supported file types are the 'native' raster package format and those that can be read via rgdal (see readGDAL), and NetCDF files (see details)


see Details


logical. If TRUE, the cell values of 'x' are copied to the RasterBrick object that is returned


integer > 0. How many layers should the RasterBrick have?


character. Filename if you want the RasterBrick to be saved on disk


integer > 0. Number of rows


integer > 0. Number of columns


minimum x coordinate (left border)


maximum x coordinate (right border)


minimum y coordinate (bottom border)


maximum y coordinate (top border)


character or object of class CRS. PROJ4 type description of a Coordinate Reference System (map projection). If this argument is missing, and the x coordinates are within -360 .. 360 and the y coordinates are within -90 .. 90, "+proj=longlat +datum=WGS84" is used


if TRUE, the values in the array are transposed


Raster* object used to set the extent, number of rows and columns and CRS


If x is a RasterLayer, the additional arguments can be used to pass additional Raster* objects.

If there is a filename argument, the additional arguments are as for writeRaster. The big.matrix most have rows representing cells and columns representing layers.

If x represents a filename there is the following additional argument:

native: logical. If TRUE (not the default), reading and writing of IDRISI, BIL, BSQ, BIP, and Arc ASCII files is done with native (raster package) drivers, rather then via rgdal.

In addition, if x is a NetCDF filename there are the following additional arguments:

varname: character. The variable name (e.g. 'altitude' or 'precipitation'. If not supplied and the file has multiple variables are a guess will be made (and reported))

lvar: integer > 0 (default=3). To select the 'level variable' (3rd dimension variable) to use, if the file has 4 dimensions (e.g. depth instead of time)

level: integer > 0 (default=1). To select the 'level' (4th dimension variable) to use, if the file has 4 dimensions, e.g. to create a RasterBrick of weather over time at a certain height.

To use NetCDF files the ncdf4 package needs to be available. It is assumed that these files follow, or are compatible with the CF-1 convention.



See Also


  • brick
  • brick,character-method
  • brick,missing-method
  • brick,RasterLayer-method
  • brick,RasterStack-method
  • brick,RasterBrick-method
  • brick,Extent-method
  • brick,array-method
  • brick,big.matrix-method
  • brick,list-method
  • brick,SpatialPixels-method
  • brick,SpatialGrid-method
  • brick,kasc-method
  • brick,grf-method
library(raster) # NOT RUN { b <- brick(system.file("external/rlogo.grd", package="raster")) b nlayers(b) names(b) extract(b, 870) # }
Documentation reproduced from package raster, version 2.6-7, License: GPL (>= 3)

Community examples

Looks like there are no examples yet.