rnaturalearth tutorial

for v0.1.0

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.

  1. Contains pre-downloaded vector maps for :

    • countries ne_countries()
    • states ne_states()
    • coastline ne_coastline()
  2. Has 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).


CRAN version


Development version from GitHub

if (!require("devtools")) install.packages("devtools")


1. Maps in the package.

Pre-downloaded maps can be accessed with :

  1. ne_countries() for country (admin-0) boundaries
  2. ne_states() for boundaries within countries (admin-1)
  3. ne_coastline() for world coastline

World at small scale (low resolution)

sp::plot(ne_countries(type = 'countries', scale = 'small'))

plot of chunk unnamed-chunk-5

Countries, UK undivided

sp::plot(ne_countries(country = 'united kingdom', type='countries'))

plot of chunk unnamed-chunk-6

map_units, UK divided into England, Scotland, Wales and Northern Ireland

sp::plot(ne_countries(country = 'united kingdom', type='map_units'))

plot of chunk unnamed-chunk-7

Countries, small scale

sp::plot(ne_countries(country = 'united kingdom', scale = 'small'))

plot of chunk unnamed-chunk-8

Countries, medium scale

sp::plot(ne_countries(country = 'united kingdom', scale = 'medium'))

plot of chunk unnamed-chunk-9

Coastline of the world subsetting of coastline is not possible because the Natural Earth data are not attributed in that way


plot of chunk unnamed-chunk-10

2. Downloading other Natural Earth vectors with ne_download().

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')


Andy South (2017). rnaturalearth: World Map Data from Natural Earth. R package version 0.1.0. https://CRAN.R-project.org/package=rnaturalearth

License and bugs

Back to top