This vignette is an introduction to rnaturalearth, an R package to hold and facilitate interaction with natural earth vector map data. rnaturalearth
is a data package designed to provide map data that can be visualised using other R packages.
Natural Earth is a public domain map dataset including vector country and other administrative boundaries.
rnaturalearth does two main things.
ne_countries()
ne_states()
ne_coastline()
ne_download()
function to facilitate download of other vector and raster maps.This vignette uses sp::plot
as a simple, quick way to show how different data can be accessed.rnaturalearth
is designed to provide data allowing creation of more elaborate maps in other visualisation packages (e.g. ggplot2
, tmap
and choroplethr
).
library(rnaturalearth)
library(sp)
Pre-downloaded maps can be accessed with :
ne_countries()
for country (admin-0) boundariesne_states()
for boundaries within countries (admin-1)ne_coastline()
for world coastline# world at small scale (low resolution)
sp::plot(ne_countries(type = 'countries', scale = 'small'))
# countries, UK undivided
sp::plot(ne_countries(country = 'united kingdom', type='countries'))
# map_units, UK divided into England, Scotland, Wales and Northern Ireland
sp::plot(ne_countries(country = 'united kingdom', type='map_units'))
# countries, small scale
sp::plot(ne_countries(country = 'united kingdom', scale = 'small'))
# countries, medium scale
sp::plot(ne_countries(country = 'united kingdom', scale = 'medium'))
# not evaluated because rely on rnaturalearthhires data which are on rOpenSci so CRAN check likely to fail
# countries, large scale
sp::plot(ne_countries(country = 'united kingdom', scale = 'large'))
# states country='united kingdom'
sp::plot(ne_states(country = 'united kingdom'))
# states geounit='england'
sp::plot(ne_states(geounit = 'england'))
# states country='france'
sp::plot(ne_states(country = 'france'))
# coastline of the world
# subsetting of coastline is not possible because the Natural Earth data are not attributed in that way
sp::plot(ne_coastline())
Each Natural Earth dataset is characterised on the website according to scale
, type
and category
. rnaturalearth allows you to specify scale
, type
and category
and will construct the url and download the corresponding file.
# lakes
lakes110 <- ne_download(scale = 110, type = 'lakes', category = 'physical')
sp::plot(lakes110, col = 'blue')
# rivers
rivers110 <- ne_download(scale = 110, type = 'rivers_lake_centerlines', category = 'physical')
sp::plot(rivers110, col = 'blue')