Plotting

Several generic functions have been implemented for SpatRaster objects to create maps and other plot types. Use ‘plot’ to create a map of a SpatRaster object. When plot is used with a SpatRaster, it calls the function ‘rasterImage’ (but, by default, adds a legend; using code from fields::image.plot). It is also possible to directly call image. You can zoom in using ‘zoom’ and clicking on the map twice (to indicate where to zoom to). With click it is possible to interactively query a SpatRaster object by clicking once or several times on a map plot.

After plotting a SpatRaster you can add vector type spatial data (points, lines, polygons). You can do this with functions points, lines, polygons if you are using the basic R data structures or plot(object, add=TRUE) if you are using Spatial* objects as defined in the sp package. When plot is used with a multi-layer SpatRaster object, all layers are plotted (up to 16), unless the layers desired are indicated with an additional argument. You can also plot SpatRaster objects with spplot. The rasterVis package has several other lattice based plotting functions for SpatRaster objects. rasterVis also facilitates creating a map from a SpatRaster with the ggplot2 package.

Multi-layer Raster objects can be plotted as individual layers

library(terra)
b <- rast(system.file("ex/logo.tif", package="terra"))
plot(b)

image0

They can also be combined into a single image, by assigning individual layers to one of the three color channels (red, green and blue):

plotRGB(b, r=1, g=2, b=3)

image1

You can also use the a number of other plotting functions with a terra object as argument, including hist, persp, contour, and density. See the help files for more info.