
geoecu da acceso en una línea de código a las capas de provincias, cantones y parroquias del Ecuador, con los códigos de la División Político-Administrativa (DPA), listas para mapear y para unir con datos de salud, vigilancia epidemiológica o cualquier otra fuente. Las capas provienen de los datos abiertos de la Organización Territorial del Estado publicados por el CONALI (Ministerio de Gobierno).
Nota: geoecu es un paquete independiente, desarrollado a título personal. No es un producto oficial de ninguna institución, ni del CONALI ni del Ministerio de Gobierno. ## Instalación
Ejecuta este bloque en la consola de R o RStudio, no en la terminal de Ubuntu. Los paquetes de visualización son opcionales para leer capas, pero necesarios para reproducir las figuras de esta página.
install.packages(c("geoecu", "ggplot2", "patchwork", "scales"))
library(geoecu)
library(ggplot2)Versión en desarrollo (GitHub):
install.packages("remotes")
remotes::install_github("f-slg/geoecu")En la primera lectura, las geometrías se descargan desde el release de datos, se verifican y se conservan en caché para futuras sesiones.
geoecu utiliza sf. Para evitar compilar
bibliotecas geoespaciales en Ubuntu, puedes instalar el binario desde la
terminal de Ubuntu antes de la instalación de R:
sudo apt update
sudo apt install r-cran-sfSi compilas sf desde R, las dependencias del sistema
incluyen libgdal-dev, libgeos-dev,
libproj-dev, libudunits2-dev y
libssl-dev.
Tras instalar el paquete, ejecuta este ejemplo mínimo:
library(geoecu)
library(ggplot2)
provincias <- read_provincias()
ggplot(provincias) +
geom_sf(fill = "#DCEAF2", color = "#0F2233", linewidth = 0.25) +
labs(title = "Provincias del Ecuador") +
theme_void()Este es un mapa introductorio, no la composición temática de la galería. Los ejemplos siguientes reproducen las imágenes detalladas con sus mismas capas y estilos.
"baja" (3 MB, para mapas, boletines y
tableros Shiny) y "alta" (39 MB, para análisis
espacial).actualizar_codigo().📖 Documentación: Guía de uso · Galería completa · Fuente de datos · Funciones
library(geoecu)
read_cantones(provincia = "Loja")
read_parroquias(canton = "Puyango", tipo = "rural")
read_parroquias(provincia = "Loja", resolucion = "alta")
# Sistema proyectado para análisis espacial de Loja
read_cantones(provincia = "Loja", crs = 32717)Cada capa es un objeto sf con códigos DPA y el área
area_km2:
| Capa | Principales columnas |
|---|---|
read_provincias() |
dpa_provin, provincia, tipo,
area_km2 |
read_cantones() |
dpa_canton, canton,
dpa_provin, provincia,
area_km2 |
read_parroquias() |
dpa_parroq, parroquia, tipo,
dpa_canton, canton, area_km2 |
La columna area_km2 es la superficie en km², calculada
sobre el elipsoide WGS84 con la resolución alta.
Este ejemplo usa datos ficticios identificados como
demostración, sin requerir un CSV que no exista en el
repositorio. Sustituye datos_demo por tu tabla real antes
de interpretar los resultados.
library(geoecu)
library(ggplot2)
# Datos ficticios solo para probar la unión (NO casos reales)
datos_demo <- data.frame(
cod_canton = c("1101", "1102", "1110"),
eventos_demo = c(12, 4, 7)
)
mapa_demo <- geoecu_unir(
datos_demo, codigo = "cod_canton", nivel = "canton",
provincia = "Loja"
)
ggplot(mapa_demo) +
geom_sf(aes(fill = eventos_demo), color = "white", linewidth = 0.2) +
scale_fill_gradient(low = "#DCEAF2", high = "#12618A",
na.value = "grey90", name = "Ejemplo") +
labs(title = "Demostración de unión DPA: Loja",
subtitle = "Datos ficticios; no representan eventos observados") +
theme_void()Los cantones sin datos quedan con NA. Antes de generar
mapas epidemiológicos, agrega los eventos al mismo nivel territorial y
verifica la correspondencia de códigos.
head(dpa)
buscar_dpa("arenal")
buscar_dpa("puyango", nivel = "canton")
formatear_codigo(c(701, 1101), "canton")
normalizar_nombre("Cañar ")En la versión 0.4.0 las parroquias urbanas forman parte de su cabecera cantonal. Para actualizar códigos de versiones anteriores y revisar las equivalencias:
actualizar_codigo(c("010101", "080253"))
subset(dpa_equivalencias, cambio == "código distinto")# Ver dónde se guardan las capas ya descargadas
geoecu_cache_dir()
geoecu_datos_disponibles()
# Si tienes GeoPackages propios, indica una carpeta que exista:
# geoecu_usar_carpeta("~/datos/geoecu")Las seis imágenes siguientes se generan con los datos abiertos de
CONALI disponibles en geoecu; la sexta añade la población
del INEC mediante el paquete hermano pobecu. Cada bloque
de R es autónomo: cópialo en RStudio para obtener la misma
composición, paleta, capas, etiquetas y leyenda de la figura. El tamaño
del panel Plots puede cambiar la distribución visual; cada
ejemplo incluye la instrucción opcional de exportación con las
dimensiones de la imagen publicada.
| Nivel | Función principal | Cobertura |
|---|---|---|
| Provincias | read_provincias() |
24 provincias + 1 zona en estudio |
| Cantones | read_cantones() |
223 cantones + 2 zonas en estudio |
| Parroquias | read_parroquias() |
1048 parroquias + 3 zonas en estudio |
Muestra 24 provincias y una zona en estudio. Los colores reflejan regiones naturales y los nombres provinciales aparecen sobre el continente.

library(geoecu)
library(ggplot2)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
region <- data.frame(
dpa_provin = sprintf("%02d", 1:24),
region = c("Sierra", "Sierra", "Sierra", "Sierra", "Sierra", "Sierra",
"Costa", "Costa", "Costa", "Sierra", "Sierra", "Costa",
"Costa", "Amazonía", "Amazonía", "Amazonía", "Sierra",
"Sierra", "Amazonía", "Insular", "Amazonía", "Amazonía",
"Costa", "Costa")
)
region <- rbind(region, data.frame(dpa_provin = "90", region = "Zona en estudio"))
region$region <- factor(region$region,
levels = c("Costa", "Sierra", "Amazonía", "Insular",
"Zona en estudio"))
prov <- reubicar_galapagos(read_provincias(crs = 32717))
p_prov <- merge(prov, region, by = "dpa_provin")
prov_etiquetas <- prov[prov$tipo == "provincia" & prov$dpa_provin != "20", ]
p_provincias <- ggplot() +
geom_sf(data = p_prov, aes(fill = region), color = "white", linewidth = 0.4) +
geom_sf_text(data = prov_etiquetas, aes(label = provincia),
color = azul, size = 2.1, fontface = "bold",
check_overlap = TRUE) +
marco(prov) +
scale_fill_manual(values = c(Costa = "#E9A23B", Sierra = "#7B9E5A",
"Amazonía" = "#2E6E5C", Insular = "#4C8DB5",
"Zona en estudio" = "grey80"),
name = "Región natural", drop = FALSE,
guide = guide_legend(nrow = 1)) +
labs(title = "Ecuador | Provincias",
subtitle = "24 provincias y una zona en estudio · División Político-Administrativa",
caption = "Galápagos reubicado únicamente para visualización") +
tema +
theme(legend.position = "bottom",
plot.title = element_text(hjust = 0, face = "bold", size = 17),
plot.subtitle = element_text(hjust = 0, size = 10),
plot.caption = element_text(size = 8, color = "grey45"))
print(p_provincias)
# Exportación idéntica: 10.5 x 8 pulgadas y 200 dpi
# ggsave("mapa_provincias.png", p_provincias, width = 10.5, height = 8, dpi = 200)Mapa temático de 223 cantones y dos zonas en
estudio, con un indicador verificable obtenido directamente del catálogo
dpa. La escala de colores es
logarítmica.

library(geoecu)
library(ggplot2)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
prov <- reubicar_galapagos(read_provincias(crs = 32717))
cant <- reubicar_galapagos(read_cantones(crs = 32717))
n_parr <- as.data.frame(table(dpa_canton = dpa$dpa_canton), stringsAsFactors = FALSE)
names(n_parr)[2] <- "parroquias"
c_parr <- merge(cant, n_parr, by = "dpa_canton")
p_cantones <- ggplot() +
geom_sf(data = c_parr, aes(fill = parroquias),
color = "white", linewidth = 0.08) +
geom_sf(data = prov, fill = NA, color = azul, linewidth = 0.42) +
marco(prov) +
scale_fill_gradientn(
colours = c("#FFF4D2", "#F2C14E", "#D9822B", "#8C3B12"),
trans = "log10", breaks = c(1, 2, 5, 10, 25, 50),
name = "Parroquias por cantón", na.value = "grey85"
) +
labs(title = "Ecuador | Cantones",
subtitle = "223 cantones y dos zonas en estudio · número de parroquias",
caption = "Escala logarítmica · límites provinciales resaltados") +
tema +
theme(legend.position = "right",
plot.title = element_text(hjust = 0, face = "bold", size = 17),
plot.subtitle = element_text(hjust = 0, size = 10),
plot.caption = element_text(size = 8, color = "grey45"))
print(p_cantones)
# ggsave("mapa_cantones.png", p_cantones, width = 10.5, height = 8, dpi = 200)Combina dos vistas: clasificación de 1048 parroquias y tres zonas en estudio, y detalle de Puyango (Loja) con sus nombres parroquiales en resolución alta.

library(geoecu)
library(ggplot2)
library(patchwork)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
prov <- reubicar_galapagos(read_provincias(crs = 32717))
parr <- reubicar_galapagos(read_parroquias(crs = 32717))
p_parroquias <- ggplot() +
geom_sf(data = parr, aes(fill = tipo), color = "white", linewidth = 0.04) +
geom_sf(data = prov, fill = NA, color = azul, linewidth = 0.3) +
marco(prov) +
scale_fill_manual(values = c("cabecera cantonal" = "#C2410C",
"parroquia rural" = "#F6E7C8",
"zona en estudio" = "grey80"),
name = "Tipo de unidad") +
labs(title = "Ecuador | Parroquias",
subtitle = "1048 parroquias y tres zonas en estudio") +
tema +
theme(plot.title = element_text(hjust = 0, face = "bold", size = 14),
plot.subtitle = element_text(hjust = 0, size = 9))
puyango <- read_parroquias(provincia = "Loja", canton = "Puyango",
resolucion = "alta", crs = 32717)
p_detalle <- ggplot(puyango) +
geom_sf(aes(fill = tipo), color = azul, linewidth = 0.55) +
geom_sf_text(aes(label = parroquia), color = azul,
size = 2.6, fontface = "bold", check_overlap = TRUE) +
scale_fill_manual(values = c("cabecera cantonal" = "#C2410C",
"parroquia rural" = "#F6E7C8"),
name = "Tipo de unidad") +
labs(title = "Detalle | Puyango (Loja)",
subtitle = "Límites y nombres parroquiales · alta resolución") +
tema +
theme(plot.title = element_text(hjust = 0, face = "bold", size = 14),
plot.subtitle = element_text(hjust = 0, size = 9))
panel_parroquial <- (p_parroquias | p_detalle) +
plot_layout(widths = c(1.55, 1), guides = "collect") &
theme(legend.position = "bottom")
print(panel_parroquial)
# ggsave("mapa_parroquias.png", panel_parroquial, width = 15, height = 7.6, dpi = 200)El recuadro muestra Galápagos reubicado, superpuesto a un mapa de cantones coloreados por número de parroquias. Es una composición solo para visualización, no para cálculos de área o distancias.

library(geoecu)
library(ggplot2)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
n_parr <- as.data.frame(table(dpa_canton = dpa$dpa_canton), stringsAsFactors = FALSE)
names(n_parr)[2] <- "parroquias"
mapa <- geoecu_unir(n_parr, "dpa_canton", "canton", crs = 32717) |>
reubicar_galapagos()
prov <- reubicar_galapagos(read_provincias(crs = 32717))
g_nac <- ggplot() +
geom_sf(data = mapa, aes(fill = parroquias), color = "white", linewidth = 0.12) +
geom_sf(data = prov, fill = NA, color = azul, linewidth = 0.3) +
marco(prov) +
scale_fill_gradientn(colours = c("#FFF4D2", "#F2C14E", "#D9822B", "#8C3B12"),
trans = "log10", breaks = c(2, 5, 10, 25, 60),
name = "Parroquias") +
labs(title = "Número de parroquias por cantón",
subtitle = "geoecu_unir() + reubicar_galapagos()") +
tema + theme(legend.position = "right",
plot.title = element_text(hjust = 0),
plot.subtitle = element_text(hjust = 0, family = "mono"))
print(g_nac)
# ggsave("mapa_nacional.png", g_nac, width = 9.5, height = 7.5, dpi = 200)Ejemplo de detalle con los 16 cantones y 94 parroquias de Loja, límites cantonales resaltados y nombres de cantón. Se utilizan las capas de alta resolución.

library(geoecu)
library(ggplot2)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
loja_p <- read_parroquias(provincia = "Loja", resolucion = "alta", crs = 32717)
loja_c <- read_cantones(provincia = "Loja", resolucion = "alta", crs = 32717)
loja_p$canton <- factor(loja_p$canton)
g_loja <- ggplot() +
geom_sf(data = loja_p, aes(fill = canton), color = "white", linewidth = 0.2) +
geom_sf(data = loja_c, fill = NA, color = azul, linewidth = 0.5) +
geom_sf_label(data = loja_c, aes(label = canton), size = 2.3, color = azul,
fontface = "bold", fill = scales::alpha("white", 0.8),
linewidth = 0, label.padding = unit(0.12, "lines")) +
scale_fill_manual(values = grDevices::hcl.colors(16, "Set 3"), guide = "none") +
labs(title = sprintf("Provincia de Loja: %d cantones y %d parroquias",
nrow(loja_c), nrow(loja_p)),
subtitle = "read_parroquias(provincia = \"Loja\", resolucion = \"alta\")") +
tema + theme(plot.title = element_text(hjust = 0),
plot.subtitle = element_text(hjust = 0, family = "mono"),
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"))
print(g_loja)
# ggsave("mapa_loja.png", g_loja, width = 8, height = 8, dpi = 200)Combina area_km2 de geoecu con la población 2026
del INEC, disponible en el paquete hermano pobecu, para obtener
habitantes por km² en los tres niveles con una
escala logarítmica común. La población usa las
divisiones del Censo 2022, así que las unidades creadas después se suman
a aquella de la que se separaron: los cantones Borbón y Sevilla Don
Bosco, y las parroquias Sosote, Shuar Pastaza, Juan Montalvo, La
Magdalena, La Primavera y Miss Ecuador. Las cifras parroquiales son una
estimación de pobecu, no oficial.

# install.packages("remotes"); remotes::install_github("f-slg/pobecu")
library(geoecu)
library(ggplot2)
library(patchwork)
azul <- "#0F2233"
dorado <- "#F2B705"
tema <- theme_void(base_size = 12) +
theme(plot.title = element_text(face = "bold", size = 13, color = azul,
hjust = 0.5, margin = margin(t = 3, b = 7, l = 4, r = 4)),
plot.subtitle = element_text(size = 9.5, color = "grey40",
hjust = 0.5, margin = margin(b = 5, l = 4, r = 4)),
legend.position = "bottom",
legend.title = element_text(size = 9, color = "grey30"),
legend.text = element_text(size = 8.5, color = "grey30"),
plot.title.position = "plot",
plot.margin = margin(t = 18, r = 20, b = 18, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
marco <- function(capa) {
geom_sf(data = marco_galapagos(capa), fill = NA, color = "grey78",
linewidth = 0.3)
}
anio <- 2026
prov <- reubicar_galapagos(read_provincias(crs = 32717))
cant <- reubicar_galapagos(read_cantones(crs = 32717))
parr <- reubicar_galapagos(read_parroquias(crs = 32717))
# Habitantes por km². `grupo` es el código de la unidad en la población del
# INEC (pobecu): las unidades creadas después se suman a la de origen.
densidad <- function(capa, grupo, pob) {
area <- tapply(capa$area_km2, grupo, sum)
hab <- pob$poblacion[match(names(area), pob$codigo)]
unname((hab / area)[grupo])
}
pob_prov <- pobecu::poblacion(nivel = "provincia", anio = anio)
pob_prov$codigo <- pob_prov$dpa_provin
prov$densidad <- densidad(prov, prov$dpa_provin, pob_prov)
# Borbón (0809) y Sevilla Don Bosco (1413) se separaron de Eloy Alfaro y Morona
pob_cant <- pobecu::poblacion(nivel = "canton", anio = anio)
pob_cant$codigo <- pob_cant$dpa_canton
grupo_cant <- c("0809" = "0802", "1413" = "1401")
cant$densidad <- densidad(
cant, ifelse(cant$dpa_canton %in% names(grupo_cant),
grupo_cant[cant$dpa_canton], cant$dpa_canton), pob_cant)
# Parroquias (estimación de pobecu, no oficial): los códigos del Censo 2022
# que cambiaron se actualizan, y las parroquias creadas después se suman a
# la parroquia de la que se separaron.
pob_parr <- pobecu::poblacion(nivel = "parroquia", anio = anio)
pob_parr$codigo <- ifelse(pob_parr$dpa_parroq %in% parr$dpa_parroq,
pob_parr$dpa_parroq,
actualizar_codigo(pob_parr$dpa_parroq))
grupo_parr <- c("131251" = "131250", # Sosote -> Rocafuerte
"160167" = "160162", # Shuar Pastaza -> Simón Bolívar
"170257" = "170250", # Juan Montalvo -> Cayambe
"210456" = "210450", # La Magdalena -> Shushufindi
"210457" = "210450", # La Primavera -> Shushufindi
"210458" = "210450") # Miss Ecuador -> Shushufindi
parr$densidad <- densidad(
parr, ifelse(parr$dpa_parroq %in% names(grupo_parr),
grupo_parr[parr$dpa_parroq], parr$dpa_parroq), pob_parr)
# Una sola escala para comparar los tres niveles
limites <- range(c(prov$densidad, cant$densidad, parr$densidad), na.rm = TRUE)
escala <- scale_fill_gradientn(
colours = c("#FFF4D2", "#F2C14E", "#D9822B", "#8C3B12"),
trans = "log10", limits = limites,
breaks = c(0.1, 1, 10, 100, 1000),
labels = c("0,1", "1", "10", "100", "1.000"),
name = "Habitantes por km²", na.value = "grey85"
)
mapa_densidad <- function(capa, titulo, borde) {
ggplot() +
geom_sf(data = capa, aes(fill = densidad), color = "white",
linewidth = borde) +
geom_sf(data = prov, fill = NA, color = azul, linewidth = 0.3) +
marco(prov) +
escala +
labs(title = titulo) +
tema +
theme(plot.margin = margin(t = 6, r = 6, b = 6, l = 6, unit = "pt"))
}
panel_densidad <- (mapa_densidad(prov, "Provincias", 0.15) |
mapa_densidad(cant, "Cantones", 0.08) |
mapa_densidad(parr, "Parroquias", 0.03)) +
plot_layout(guides = "collect") +
plot_annotation(
title = "Ecuador | Densidad poblacional",
subtitle = sprintf("Población %d (INEC, vía pobecu) / area_km2 de geoecu", anio),
caption = paste("Escala logarítmica común · parroquias: estimación de pobecu, no oficial",
"· gris: zonas en estudio, sin población asignada"),
theme = theme(plot.title = element_text(face = "bold", size = 17, color = azul),
plot.subtitle = element_text(size = 10, color = "grey40"),
plot.caption = element_text(size = 8, color = "grey45"),
plot.margin = margin(t = 18, r = 20, b = 12, l = 22, unit = "pt"),
plot.background = element_rect(fill = "white", color = NA))
) &
theme(legend.position = "bottom",
legend.title.position = "top", legend.title = element_text(hjust = 0.5),
legend.key.width = unit(2.2, "cm"), legend.key.height = unit(0.3, "cm"))
print(panel_densidad)
# ggsave("mapa_densidad.png", panel_densidad, width = 15, height = 6.2, dpi = 200)Nota:
reubicar_galapagos()altera las coordenadas únicamente para mapas con recuadro. Para mediciones espaciales utiliza las capas originales sin reubicar.
Consulta la guía de uso · Galería web · Generador original de figuras
| Fuente | Organización Territorial del Estado, Comité Nacional de Límites Internos (CONALI), Ministerio de Gobierno del Ecuador. Versión del 17 de julio de 2026. Datos abiertos, licencia CC BY. |
| Figuras | Las imágenes de este README se generan con data-raw/03_figuras_readme.R
a partir de los datos del paquete. |
| Procesamiento | Cantones y provincias construidos disolviendo las parroquias por
código DPA; se excluye un polígono sin código (“ISLA”); simplificación
topológica con mapshaper (10 m en alta,
250 m en baja); reproyección a WGS84. Scripts en data-raw/. |
| Cobertura | 24 provincias, 223 cantones y 1048 parroquias (223 cabeceras cantonales y 825 rurales), más 3 zonas en estudio. |
| Sistema de coordenadas | WGS84 (EPSG:4326) por defecto. |
Las parroquias urbanas forman parte de su cabecera cantonal. Las circunscripciones creadas después de la versión de origen no aparecen hasta la siguiente actualización de datos.
citation("geoecu")Al usar los datos, cita también la fuente, como pide el CONALI:
Comité Nacional de Límites Internos (CONALI), Ministerio de Gobierno del
Ecuador. Límites territoriales de la Organización Territorial del Estado
interparroquiales, aprobados por el Directorio del CONALI en sesión ordinaria
del 24 de marzo de 2022, 17 de enero de 2023 y 13 de marzo de 2026. Datos
abiertos, licencia CC BY.
Las preguntas de uso van en Discussions, y los errores y propuestas en issues. Consulta la guía de contribución. Este proyecto sigue un código de conducta: al participar, te comprometes a respetarlo.
El código se distribuye bajo licencia MIT. Los
datos son del CONALI, con licencia CC BY; ver inst/COPYRIGHTS.