| ggspatvector {tidyterra} | R Documentation | 
Visualise SpatVector objects
Description
Wrappers of ggplot2::geom_sf() family used to visualise SpatVector
objects (see terra::vect()).
Usage
geom_spatvector(
  mapping = aes(),
  data = NULL,
  na.rm = FALSE,
  show.legend = NA,
  ...
)
geom_spatvector_label(
  mapping = aes(),
  data = NULL,
  na.rm = FALSE,
  show.legend = NA,
  ...,
  nudge_x = 0,
  nudge_y = 0,
  label.size = 0.25,
  inherit.aes = TRUE
)
geom_spatvector_text(
  mapping = aes(),
  data = NULL,
  na.rm = FALSE,
  show.legend = NA,
  ...,
  nudge_x = 0,
  nudge_y = 0,
  check_overlap = FALSE,
  inherit.aes = TRUE
)
stat_spatvector(
  mapping = NULL,
  data = NULL,
  geom = "rect",
  position = "identity",
  na.rm = FALSE,
  show.legend = NA,
  inherit.aes = TRUE,
  ...
)
Arguments
| mapping | Set of aesthetic mappings created by  | 
| data | A  | 
| na.rm | If  | 
| show.legend | logical. Should this layer be included in the legends?
 You can also set this to one of "polygon", "line", and "point" to override the default legend. | 
| ... | Other arguments passed on to  | 
| nudge_x,nudge_y | Horizontal and vertical adjustment to nudge labels by.
Useful for offsetting text from points, particularly on discrete scales.
Cannot be jointly specified with  | 
| label.size | Size of label border, in mm. | 
| inherit.aes | If  | 
| check_overlap | If  | 
| geom | The geometric object to use to display the data for this layer.
When using a  
 | 
| position | A position adjustment to use on the data for this layer. This
can be used in various ways, including to prevent overplotting and
improving the display. The  
 | 
Details
These functions are wrappers of ggplot2::geom_sf() functions. Since a
fortify.SpatVector() method is provided, ggplot2 treat a
SpatVector in the same way that a sf object. A side effect
is that you can use ggplot2::geom_sf() directly with SpatVector objects.
See ggplot2::geom_sf() for details on aesthetics, etc.
Value
A ggplot2 layer
terra equivalent
See Also
Other ggplot2 utils:
autoplot.Spat,
fortify.Spat,
geom_spat_contour,
geom_spatraster(),
geom_spatraster_rgb(),
stat_spat_coordinates()
Examples
# Create a SpatVector
extfile <- system.file("extdata/cyl.gpkg", package = "tidyterra")
cyl <- terra::vect(extfile)
class(cyl)
library(ggplot2)
ggplot(cyl) +
  geom_spatvector()
# With params
ggplot(cyl) +
  geom_spatvector(aes(fill = name), color = NA) +
  scale_fill_viridis_d() +
  coord_sf(crs = 3857)
# Add labels
ggplot(cyl) +
  geom_spatvector(aes(fill = name), color = NA) +
  geom_spatvector_text(aes(label = iso2),
    fontface = "bold",
    color = "red"
  ) +
  scale_fill_viridis_d(alpha = 0.4) +
  coord_sf(crs = 3857)
# You can use now geom_sf with SpatVectors!
ggplot(cyl) +
  geom_sf() +
  labs(
    title = paste("cyl is", as.character(class(cyl))),
    subtitle = "With geom_sf()"
  )