7 Generar la salida del proyecto
En los apartados siguientes se va a generar la salida del proyecto usando el paquete tmap
. Para generar una imagen o un mapa también se puede usar el paquete sf
.
En todos los casos funciona igual: se redirige la salida al tipo que se desee, se genera el mapa mediante las funciones necesarias y, cuando se haya acabado, se desactiva la salida para que se guarden los cambios.
7.1 Guardar como una imagen
En el ejemplo siguiente, se muestra cómo generar un archivo png (hay funciones similares para otros formatos gráficos, por ejemplo jpg()
). En la función png()
se pueden usar parámetros para indicar diversas características de la imagen que se genera. El proceso de generación se acaba al ejecutar la función dev.off()
, entonces se guarda el archivo en la carpeta de trabajo.
png("selección.png")
tm_shape(censo) +
tm_fill("white") +
tm_borders() +
tm_text("municipio", size = 0.3) +
tm_shape(municipio_sel) +
tm_fill("lightgreen") +
tm_borders(lwd = 2) +
tm_text("municipio", size = 0.3) +
tm_layout(
frame = FALSE,
title = seleccion,
title.size = 1,
title.position = c(0.5, "top")
)
dev.off()
7.2 Imprimir un mapa
A un mapa le podemos añadir el título, la escala, la flecha del norte, entre otros elementos. Podemos guardarlo como un gráfico o como un archivo en formato PDF, como se hace en el ejemplo siguiente. En las pruebas que he hecho, la resolución es mucho mejor en formato PDF que en cualquier formato gráfico, por eso se usa este formato.
pdf("selección.pdf")
tm_shape(censo) +
tm_fill("Incremento") +
tm_borders() +
tm_text("municipio", size = 0.3) +
tm_layout(
frame = FALSE,
title = "Granada",
title.size = 1,
title.position = c(0.35, "top")
) +
tm_compass(type = "8star", position = c("right", "bottom")) +
tm_scale_bar(
breaks = c(0, 25, 50),
text.size = 0.5,
position = c("right", "bottom")
)
dev.off()
7.3 Generar un mapa para la Web
Podemos generar un mapa para la Web usando funciones del paquete tmap
. Funciona igual que para la generación de un archivo gráfico o en formato PDF: en este caso se usa la función tmap_mode()
para indicar el inicio y el final del proceso de generación. En este caso, la generación se ha de llevar a cabo mediante funciones del propio paquete.
tmap_mode('view')
tm_shape(censo) +
tm_fill(alpha = 0) +
tm_borders() +
tm_text("municipio", size = 0.5) +
tm_shape(municipio_sel) +
tm_fill("lightgreen") +
tm_borders(lwd = 2) +
tm_text("municipio", size = 0.5) +
tm_layout(
frame = FALSE,
title = seleccion,
title.size = 1,
title.position = c(0.35, "top")
)
tmap_mode('plot')

Figura 7.1: Guardar el resultado como una página Web en el disco local.
Nos permite guardar el resultado como una página Web local (figura 7.1), que podemos abrir con nuestro navegador.