This article shows how to plot the results of
rasterpic_img()
with several packages.
Base plots
The most straightforward option is to use the base
plot()
methods provided by the package
terra (terra::plotRGB()
)
library(rasterpic)
library(terra)
# The flag of the United Kingdom
img <- system.file("img/UK_flag.png",
package = "rasterpic"
)
uk <- sf::st_read(
system.file("gpkg/UK.gpkg",
package = "rasterpic"
),
quiet = TRUE
)
uk_img <- rasterpic_img(uk, img, mask = TRUE, inverse = TRUE)
plotRGB(uk_img)
With tmap
tmap can be also used to create great maps:
library(tmap)
tm_shape(uk_img) +
tm_graticules() +
tm_rgb()
With mapsf
mapsf, the replacement of cartography, also provides this functionality:
library(mapsf)
mf_raster(uk_img)
mf_scale()
mf_inset_on(x = "worldmap", pos = "topright")
mf_worldmap(uk)
mf_inset_off()
With maptiles
maptiles is a interesting package that provides the ability of downloading map tiles from different providers. It also has a specific function for plotting terra rasters:
library(maptiles)
other_tile <- get_tiles(uk, crop = TRUE, zoom = 6)
other_tile_crop <- terra::crop(other_tile, uk_img)
plot_tiles(other_tile_crop)
plot_tiles(uk_img, add = TRUE)