Laboratorio aplicado para póster de remuneraciones municipales
2026-05-27
En este laboratorio construiremos una ficha de caracterización comunal para incorporar en el póster final del curso.
La ficha combinará:
El análisis de remuneraciones municipales no debe presentarse aislado.
Una comuna con alta ruralidad, mayor pobreza o fuerte dependencia del Fondo Común Municipal puede tener condiciones institucionales distintas a una comuna urbana, con mayor presupuesto o más capacidad administrativa.
Por eso, antes de analizar las remuneraciones, necesitamos responder:
¿Qué tipo de comuna estamos analizando?
Al finalizar, cada grupo debe construir una imagen que combine:
La imagen final podrá ser incorporada directamente en el póster.
Durante el laboratorio seguiremos estos pasos:
Nota
Los paquetes se instalan una sola vez en el computador.
En el script final no conviene dejar líneas como install.packages(), porque pueden generar errores al ejecutar el código en otro equipo.
Si algún paquete no está instalado, se puede ejecutar una sola vez en la consola:
Luego se cargan con library().
Primero cargamos el mapa comunal disponible en el paquete chilemapas.
Luego lo convertimos en un objeto espacial sf.
Antes de filtrar, siempre conviene mirar los nombres de las columnas.
También podemos revisar las primeras observaciones.
Simple feature collection with 6 features and 3 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -70.28665 ymin: -21.63061 xmax: -68.40454 ymax: -18.9369
Geodetic CRS: SIRGAS 2000
# A tibble: 6 × 4
codigo_comuna codigo_provincia codigo_region geometry
<chr> <chr> <chr> <MULTIPOLYGON [°]>
1 01401 014 01 (((-68.86081 -21.28512, -68.9217…
2 01403 014 01 (((-68.65113 -19.77188, -68.8118…
3 01405 014 01 (((-68.65113 -19.77188, -68.6354…
4 01402 014 01 (((-69.31789 -19.13651, -69.2717…
5 01404 014 01 (((-69.39615 -19.06125, -69.4002…
6 01107 011 01 (((-70.1095 -20.35131, -70.12438…
Para construir el mapa comunal necesitamos ubicar dos códigos:
codigo_regioncodigo_comunaEn nuestro ejemplo trabajaremos con:
| Territorio | Código |
|---|---|
| Región de La Araucanía | 09 |
| Comuna de Vilcún | 09119 |
Revisamos cuántas comunas quedaron en la región:
Verificamos que el filtro haya funcionado:
Simple feature collection with 1 feature and 3 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -72.52025 ymin: -38.85563 xmax: -71.68207 ymax: -38.55588
Geodetic CRS: SIRGAS 2000
# A tibble: 1 × 4
codigo_comuna codigo_provincia codigo_region geometry
* <chr> <chr> <chr> <MULTIPOLYGON [°]>
1 09119 091 09 (((-71.85229 -38.56999, -71.8396…
Esta es la versión más simple del mapa.
Sirve para verificar que el filtro funcionó correctamente.
mapa_vilcun <- ggplot() +
geom_sf(
data = araucania,
fill = "grey90",
color = "white",
linewidth = 0.25
) +
geom_sf(
data = vilcun,
fill = "#F2B705",
color = "#003A70",
linewidth = 0.7
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15),
plot.subtitle = element_text(size = 11),
plot.caption = element_text(size = 8, hjust = 0),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcunPodemos modificar los colores del mapa cambiando los valores de fill y color.
El argumento fill cambia el color del área.
El argumento color cambia el borde.
Una alternativa es trabajar con una paleta institucional.
Luego usamos esos objetos en el gráfico.
mapa_vilcun_colores <- ggplot() +
geom_sf(
data = araucania,
fill = gris_claro,
color = "white",
linewidth = 0.25
) +
geom_sf(
data = vilcun,
fill = amarillo_uct,
color = azul_uct,
linewidth = 0.8
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15, color = azul_uct),
plot.subtitle = element_text(size = 11, color = gris_texto),
plot.caption = element_text(size = 8, hjust = 0, color = "grey40"),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcun_coloresEsta versión usa colores más neutros.
Puede servir para pósters donde el mapa no debe competir visualmente con los gráficos principales.
mapa_vilcun_sobrio <- ggplot() +
geom_sf(
data = araucania,
fill = "grey92",
color = "grey75",
linewidth = 0.2
) +
geom_sf(
data = vilcun,
fill = "grey35",
color = "black",
linewidth = 0.8
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15),
plot.subtitle = element_text(size = 11),
plot.caption = element_text(size = 8, hjust = 0),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcun_sobrioA veces conviene destacar más el contorno regional.
mapa_vilcun_borde <- ggplot() +
geom_sf(
data = araucania,
fill = "grey94",
color = "grey60",
linewidth = 0.25
) +
geom_sf(
data = vilcun,
fill = "#F2B705",
color = "#003A70",
linewidth = 1
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15),
plot.subtitle = element_text(size = 11),
plot.caption = element_text(size = 8, hjust = 0),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcun_bordeA veces conviene destacar más el contorno regional.
También podemos agregar una etiqueta sobre la comuna.
Primero obtenemos un punto central de la comuna.
Luego agregamos el texto con geom_sf_text().
mapa_vilcun_etiqueta <- ggplot() +
geom_sf(
data = araucania,
fill = "grey90",
color = "white",
linewidth = 0.25
) +
geom_sf(
data = vilcun,
fill = "#F2B705",
color = "#003A70",
linewidth = 0.8
) +
geom_sf_text(
data = punto_vilcun,
aes(label = "Vilcún"),
size = 4,
fontface = "bold",
color = "#003A70"
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15),
plot.subtitle = element_text(size = 11),
plot.caption = element_text(size = 8, hjust = 0),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcun_etiquetaOtra forma es dejar la región sin relleno y destacar solo la comuna.
mapa_vilcun_contorno <- ggplot() +
geom_sf(
data = araucania,
fill = NA,
color = "grey60",
linewidth = 0.3
) +
geom_sf(
data = vilcun,
fill = "#F2B705",
color = "#003A70",
linewidth = 0.9
) +
labs(
title = "Ubicación de Vilcún",
subtitle = "Región de La Araucanía",
caption = "Fuente: elaboración propia con paquete chilemapas."
) +
theme_void(base_size = 11) +
theme(
plot.title = element_text(face = "bold", size = 15),
plot.subtitle = element_text(size = 11),
plot.caption = element_text(size = 8, hjust = 0),
plot.margin = margin(10, 10, 10, 10)
)
mapa_vilcun_contornoOtra forma es dejar la región sin relleno y destacar solo la comuna.
Ahora construiremos una ficha con información básica de la comuna.
En el ejemplo usaremos Vilcún.
texto_ficha <- "
<span style='font-size:16pt'><b>Contexto comunal: Vilcún</b></span><br><br>
<b>Región:</b> La Araucanía<br>
<b>Provincia:</b> Cautín<br>
<b>Población:</b> 32.742 habitantes<br>
<b>Superficie:</b> 1.421 km²<br>
<b>Ruralidad:</b> 39,7%<br>
<b>Pobreza por ingresos:</b> 11,7%<br>
<b>Pobreza multidimensional:</b> 22,7%<br>
<b>Dependencia FCM:</b> cercana al 76%<br><br>
<b>Alcaldesa:</b> Katherinne Migueles Muñoz<br>
<b>Tendencia política:</b> RN / Chile Vamos<br>
<b>Cambio político reciente:</b> No
"Usaremos ggtext::richtext, que permite incorporar negritas, saltos de línea y tamaños diferenciados.
Usaremos ggtext::richtext, que permite incorporar negritas, saltos de línea y tamaños diferenciados.
Podemos agregar un borde suave para que la ficha parezca una tarjeta.
ficha_vilcun_borde <- ggplot() +
annotate(
"richtext",
x = 0,
y = 1,
label = texto_ficha,
hjust = 0,
vjust = 1,
size = 4.1,
fill = "white",
color = "grey20",
label.color = "grey75",
label.size = 0.4,
lineheight = 1.25,
r = unit(0.15, "lines")
) +
xlim(0, 1) +
ylim(0, 1) +
theme_void() +
theme(
plot.margin = margin(10, 10, 10, 10)
)
ficha_vilcun_bordePodemos agregar un borde suave para que la ficha parezca una tarjeta.
También podemos usar un fondo más suave.
ficha_vilcun_color <- ggplot() +
annotate(
"richtext",
x = 0,
y = 1,
label = texto_ficha,
hjust = 0,
vjust = 1,
size = 4.1,
fill = "#F7F9FB",
color = "grey20",
label.color = "#003A70",
label.size = 0.5,
lineheight = 1.25,
r = unit(0.15, "lines")
) +
xlim(0, 1) +
ylim(0, 1) +
theme_void() +
theme(
plot.margin = margin(10, 10, 10, 10)
)
ficha_vilcun_colorTambién podemos usar un fondo más suave.
Para combinar dos gráficos usamos el paquete patchwork.
contexto_vilcun <- mapa_vilcun_colores + ficha_vilcun_color +
plot_layout(widths = c(1.2, 1)) +
plot_annotation(
title = "Contexto comunal para el análisis de remuneraciones municipales",
subtitle = "Vilcún combina ruralidad, alta dependencia fiscal y desafíos sociales relevantes.",
theme = theme(
plot.title = element_text(face = "bold", size = 18, color = "#003A70"),
plot.subtitle = element_text(size = 12, color = "grey30"),
plot.margin = margin(10, 10, 10, 10)
)
)
contexto_vilcunPara combinar dos gráficos usamos el paquete patchwork.
El argumento widths permite cambiar el espacio asignado a cada parte.
contexto_vilcun_mapa_grande <- mapa_vilcun_colores + ficha_vilcun_color +
plot_layout(widths = c(1.5, 1)) +
plot_annotation(
title = "Contexto comunal para el análisis de remuneraciones municipales",
subtitle = "Vilcún, Región de La Araucanía",
theme = theme(
plot.title = element_text(face = "bold", size = 18, color = "#003A70"),
plot.subtitle = element_text(size = 12, color = "grey30"),
plot.margin = margin(10, 10, 10, 10)
)
)
contexto_vilcun_mapa_grandeEl argumento widths permite cambiar el espacio asignado a cada parte.
contexto_vilcun_ficha_grande <- mapa_vilcun_colores + ficha_vilcun_color +
plot_layout(widths = c(1, 1.3)) +
plot_annotation(
title = "Contexto comunal para el análisis de remuneraciones municipales",
subtitle = "Vilcún, Región de La Araucanía",
theme = theme(
plot.title = element_text(face = "bold", size = 18, color = "#003A70"),
plot.subtitle = element_text(size = 12, color = "grey30"),
plot.margin = margin(10, 10, 10, 10)
)
)
contexto_vilcun_ficha_grandeUna vez elegida la versión final, exportamos el resultado.
Para un póster, conviene exportar en alta resolución.
| Uso | Ancho | Alto | DPI |
|---|---|---|---|
| Imagen horizontal | 12 | 6 | 300 |
| Imagen vertical | 7 | 9 | 300 |
| Imagen pequeña | 8 | 4 | 300 |
El valor dpi = 300 permite que la imagen tenga buena calidad para impresión.
| Dimensión | Variable |
|---|---|
| Territorial | región, provincia, superficie |
| Demográfica | población |
| Social | pobreza por ingresos |
| Social | pobreza multidimensional |
| Territorial | ruralidad |
| Fiscal | dependencia del FCM |
| Política | alcalde o alcaldesa |
| Política | tendencia política |
| Política | continuidad o cambio político reciente |
Una buena ficha debe cumplir con cinco criterios:
Eviten estos errores:
Cada grupo debe entregar una imagen en formato .png.
El nombre del archivo debe seguir esta estructura:
Antes de incorporar la ficha al póster, cada grupo debe responder:
El mapa y la ficha comunal no son un adorno.
Son una herramienta para interpretar mejor el análisis de remuneraciones municipales.
El objetivo final es que el póster no solo muestre datos, sino que también explique el contexto institucional y territorial en el que esos datos se producen.
