This vignette shows how rnaturalearth allows mapping countries using different definitions of what a country is. What a country is can be more complicated than you might expect.
For example, from my own parochial perspective, it allows mapping the UK as a whole or separating out England, Scotland, Wales and Northern Ireland. It also allows you to exclude far away places like the Falkland Islands, or not. Mapping France it allows the inclusion or exclusion of French Guiana and islands in the South Pacific.
rnaturalearth is an R package to hold and facilitate interaction with natural earth vector map data.
Natural Earth is a public domain map dataset including vector country boundaries.
This vignette uses plot
as a simple, quick way to plot the data obtained using rnaturalearth
. rnaturalearth
data can also be used to make more elaborate maps with ggplot2
, tmap
and other options.
library(rnaturalearth)
Natural Earth data are classified by countries
, map_units
and sovereignty
. Below you will see that specifying united kingdom
for
countries
gives the UK undividedmap_units
gives England, Scotland, Wales and Northern Irelandsovereignty
includes the Falkland IslandsFiltering by geounit
can give finer control, e.g. to plot Scotland alone, or France without French Guiana.
# countries, UK undivided plot(ne_countries(country = "united kingdom", type = "countries")["geometry"])
# map_units, UK divided into England, Scotland, Wales and Northern Ireland plot(ne_countries(country = "united kingdom", type = "map_units")["geometry"])
# map_units, select by geounit to plot Scotland alone plot(ne_countries(geounit = "scotland", type = "map_units")["geometry"])
# sovereignty, Falkland Islands included in UK plot(ne_countries(country = "united kingdom", type = "sovereignty")["geometry"], col = "red") plot(ne_coastline(scale = 110)["geometry"], lty = 3, add = TRUE)
# France, country includes French Guiana plot(ne_countries(country = "france")["geometry"]) # France map_units includes French Guiana too plot(ne_countries(country = "france", type = "map_units")["geometry"])
# France filter map_units by geounit to exclude French Guiana plot(ne_countries(geounit = "france", type = "map_units")["geometry"])
# France sovereignty includes South Pacicic islands plot(ne_countries(country = "france", type = "sovereignty")["geometry"], col = "red") plot(ne_coastline(scale = 110)["geometry"], lty = 3, add = TRUE)
The different definitions of a country outlined above are available at different scales.
plot( ne_countries(country = "united kingdom", scale = "large")["geometry"], main = "large scale" )
# countries, medium scale plot( ne_countries(country = "united kingdom", scale = "medium")["geometry"], main = "medium scale" )
# countries, small scale plot( ne_countries(country = "united kingdom", scale = "small")["geometry"], main = "small scale" )
# states country='united kingdom' plot(ne_states(country = "united kingdom")["geometry"])
# states geounit='england' plot(ne_states(geounit = "england")["geometry"])
# states country='france' plot(ne_states(country = "france")["geometry"])
# states geounit='france' plot(ne_states(geounit = "france")["geometry"])
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.