fortify.Spat | R Documentation |
Spat*
ObjectsFortify SpatRaster
and SpatVector
objects to data frames. This provide
native compatibility with ggplot2::ggplot()
.
## S3 method for class 'SpatRaster'
fortify(
model,
data,
...,
.name_repair = "unique",
maxcell = terra::ncell(model) * 1.1,
pivot = FALSE
)
## S3 method for class 'SpatVector'
fortify(model, data, ...)
## S3 method for class 'SpatGraticule'
fortify(model, data, ...)
model |
A |
data |
Not used by this method. |
... |
Other arguments passed on to
|
.name_repair |
Treatment of problematic column names:
|
maxcell |
positive integer. Maximum number of cells to use for the plot. |
pivot |
Logical. When |
fortify.SpatVector()
returns a sf
object and
fortify.SpatRaster()
returns a tibble
. See Methods.
Implementation of the generic ggplot2::fortify()
method.
SpatRaster
Return a tibble than can be used with ggplot2::geom_*
like
ggplot2::geom_point()
, ggplot2::geom_raster()
, etc.
The resulting tibble includes the coordinates on the columns x, y
. The
values of each layer are included as additional columns named as per the
name of the layer on the SpatRaster
.
The CRS of the SpatRaster
can be retrieved with
attr(fortifiedSpatRaster, "crs")
.
It is possible to convert the fortified object onto a SpatRaster
again with
as_spatraster()
.
When pivot = TRUE
the SpatRaster
is fortified in a "long" format (see
tidyr::pivot_longer()
). The fortified object would have the following
columns:
x,y
: Coordinates (center) of the cell on the corresponding CRS.
lyr
: Indicating the name of the SpatRaster
layer of value
.
value
: The value of the SpatRaster
in the corresponding lyr
.
This option may be useful when using several geom_*
and for faceting, see
Examples.
SpatVector
and SpatGraticule
Return a sf
object than can be used with ggplot2::geom_sf()
.
sf::st_as_sf()
, as_tibble.Spat
, as_spatraster()
,
ggplot2::fortify()
.
Other ggplot2 utils:
autoplot.Spat
,
geom_spat_contour
,
geom_spatraster()
,
geom_spatraster_rgb()
,
ggspatvector
,
stat_spat_coordinates()
Other ggplot2 methods:
autoplot.Spat
Coercing objects:
as_coordinates()
,
as_sf()
,
as_spatraster()
,
as_spatvector()
,
as_tibble.Spat
# Get a SpatRaster
r <- system.file("extdata/volcano2.tif", package = "tidyterra") %>%
terra::rast() %>%
terra::project("EPSG:4326")
fortified <- ggplot2::fortify(r)
fortified
# The crs is an attribute of the fortified SpatRaster
attr(fortified, "crs")
# Back to a SpatRaster with
as_spatraster(fortified)
# You can now use a SpatRaster with any geom
library(ggplot2)
ggplot(r) +
geom_histogram(aes(x = elevation),
bins = 20, fill = "lightblue",
color = "black"
)
# Create a SpatVector
extfile <- system.file("extdata/cyl.gpkg", package = "tidyterra")
cyl <- terra::vect(extfile)
cyl
# To sf
ggplot2::fortify(cyl)
# Now you can use geom_sf() straight away thanks to fortify::SpatVector()
library(ggplot2)
ggplot(cyl) +
geom_sf()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.