Skip to contents

Returns provinces of Spain at a specified scale.

Usage

esp_get_prov(prov = NULL, moveCAN = TRUE, ...)

Arguments

prov

A vector of names and/or codes for provinces or NULL to get all the provinces. See Details.

moveCAN

A logical TRUE/FALSE or a vector of coordinates c(lat, lon). It places the Canary Islands close to Spain's mainland. Initial position can be adjusted using the vector of coordinates. See Displacing the Canary Islands in esp_move_can().

...

Arguments passed on to esp_get_nuts, esp_get_nuts

year

year character string or number. Release year of the file. See giscoR::gisco_get_nuts() for valid values.

epsg

character string or number. Projection of the map: 4-digit EPSG code. One of:

cache

logical. Whether to do caching. Default is TRUE. See Caching strategies section in esp_set_cache_dir().

update_cache

logical. Should the cached file be refreshed? Default is FALSE. When set to TRUE, it will force a new download.

cache_dir

character string. A path to a cache directory. See Caching strategies section in esp_set_cache_dir().

spatialtype

character string. Type of geometry to be returned. Options available are:

  • "RG": Regions - MULTIPOLYGON/POLYGON object.

  • "LB": Labels - POINT object.

ext

character. Extension of the file (default "gpkg"). See giscoR::gisco_get_nuts().

verbose

logical. If TRUE displays informational messages.

resolution

character string or number. Resolution of the geospatial data. One of:

  • "60": 1:60 million.

  • "20": 1:20 million.

  • "10": 1:10 million.

  • "03": 1:3 million.

  • "01": 1:1 million.

Value

A sf object.

Details

When using prov you can use and mix names and NUTS codes (levels 1, 2 or 3), ISO codes (corresponding to level 2 or 3) or "cpro" (see esp_codelist).

Ceuta and Melilla are considered as provinces in this dataset.

When calling a higher level (Autonomous Community or NUTS1), all the provinces of that level will be added.

Note

Please check the download and usage provisions on gisco_attributions().

Examples

prov <- esp_get_prov()

library(ggplot2)

ggplot(prov) +
  geom_sf() +
  theme_minimal()


# \donttest{
# Random Provinces
random <- esp_get_prov(prov = c(
  "Zamora", "Palencia", "ES-GR",
  "ES521", "01"
))


ggplot(random) +
  geom_sf(aes(fill = codauto), show.legend = FALSE, alpha = 0.5) +
  scale_fill_manual(values = hcl.colors(nrow(random), "Spectral")) +
  theme_minimal()



# All Provinces of a Zone plus an addition
mix <- esp_get_prov(prov = c(
  "Noroeste",
  "Castilla y Leon", "La Rioja"
))

mix$ccaa <- esp_dict_region_code(
  mix$codauto,
  origin = "codauto"
)

ggplot(mix) +
  geom_sf(aes(fill = ccaa), alpha = 0.5) +
  scale_fill_discrete(type = hcl.colors(5, "Temps")) +
  theme_classic()


# ISO codes available

allprovs <- esp_get_prov()

ggplot(allprovs) +
  geom_sf(fill = NA) +
  geom_sf_text(aes(label = iso2.prov.code),
    check_overlap = TRUE,
    fontface = "bold"
  ) +
  coord_sf(crs = 3857) +
  theme_void()

# }