La visualización de datos es un área que cada vez está más presente en nuestras vidas. Existe un área de estudio dedicada exclusivamente a transmitir información visual en multitud de formatos. Uno de esos casos en los que podemos ver la representación de datos de forma cotidiana es en los resultados electorales. Los medios de comunicación hacen uso de todo tipo de gráficos y diagramas para mostrar el reparto de votos desde todos los puntos posibles. Sin embargo, las elecciones políticas tienen una componente fundamentalmente espacial, lo cual nos revela mucha información sobre la distribución del voto. Por ello, hoy vamos a aprender a crear un mapa como este en QGIS con los resultados de las elecciones generales españolas de 2019.

Vamos a representar el partido político ganador a nivel de participación municipal, variando la intensidad del color en función del porcentaje de votos obtenido. Para ello, vamos a cargar el shapefile “elecciones_generales_municipios.shp” en QGIS, el cual podéis descargar aquí. El primer paso es aplicar una simbología categorizada en función del municipio ganador. En este caso, vamos a utilizar el campo “partido_ag”, el cual agrupa diferentes partidos regionales bajo unas mismas siglas para simplificar las cosas (como ocurre con las confluencias del PSOE o de Unidas Podemos).

A continuación, vamos a crear una regla de simbología que aplique un color variable a cada polígono proporcional al porcentaje de votos obtenidos del partido ganador. De esta forma, crearemos un gradiente entre el blanco y el color característico de cada partido, haciendo que el color sea más intenso mientras mayor sea el porcentaje de votos. Vamos a hacer esto antes de elegir el color principal de cada partido porque vamos a crear el estilo una vez y lo vamos a pegar en el resto de categorías.

CONSEJO: Haciendo click en la pestaña Ver > Paneles > Estilo de capas se nos abrirá un panel de simbología que actualiza al instante el estilo de la capa, haciendo que podamos ver los cambios al momento.

Vamos a empezar a simbolizar una categoría que tenga bastante representación en el mapa. Todas van a tener un estilo sencillo de relleno simple y borde. En la ventana de Selector de símbolos vamos a pinchar en el botón de configuración que hay a la derecha del selector de color de relleno.

Pinchamos en la opción “Editar…” del desplegable y se nos abrirá una ventana para crear una cadena de expresión. En el recuadro de texto pegaremos lo siguiente:

ramp_color(
    reate_ramp(
        map(0.25,'255,255,255',
        0.7,  @symbol_color
    )
), "porcentaje"/100)

Quedaría de esta manera:

Confuso, ¿verdad? ¡No te preocupes! Vamos a desgranar paso a paso esta expresión.

  1. La función “ramp_color” aplica el color de una rampa determinada en función del valor que le pasemos, oscilando entre 0 y 1. El primer argumento debe ser una rampa de color ya existente (por ejemplo, ‘Spectral’) o una que creemos nosotros mismos. El valor que le pasamos es el porcentaje de votos (por eso invocamos el campo “porcentaje”) dividido entre 100 para que el resultado oscile entre 0 y 1. Esta función está descrita en la categoría “Color” de la columna de funciones que vemos en el medio de la ventana.
  2. La función “create_ramp” crea una rampa de color en función de los parámetros que le indiquemos. Es el primer argumento que le hemos pasado a nuestra función “ramp_color”. Toma como argumento un mapa de valores.
  3. La función “map” crea un mapa de valores, el cual es el argumento de la función “create_ramp” que acabamos de utilizar. Tenemos que pasarle el punto y el color inicial, así como el punto y el color final. La rampa oscila entre 0 y 1. Sin embargo, para acentuar el contraste de color, hemos recortado el intervalo y lo hemos definido entre 0.25 y 0.7. Como color inicial hemos elegido el blanco (cuyo código RGB es 255, 255, 255). El color final de nuestra rampa será el característico de cada partido político. Para evitar modificar la expresión para todas las categorías, vamos a hacer que obtenga automáticamente el color de la categoría. Para ello usaremos la variable especial de QGIS “@symbol_color”. De esta forma, utilizará como color final de la rampa el tono rojizo que tiene ahora nuestro estilo.

Recapitulando.

Hemos creado una rampa de color para esta categoría entre el blanco y el color de relleno que hay definido en el estilo (el cual se obtiene dinámicamente mediante la variable @symbol_color). Dentro de ese gradiente de color, el tono de cada polígono dependerá linealmente del porcentaje de votos del partido ganador. Sencillo, ¿verdad?

Si aceptamos los cambios y visualizamos nuestra simbología nos daremos cuenta de una cosa importante: los bordes de los polígonos tienen el borde negro, el cual rompe el efecto que queremos dar a nuestro mapa. Quitar el borde no es una opción porque QGIS siempre muestra algún tipo de borde, aunque sea muy fino. Por lo tanto, vamos a aplicar a los bordes la misma regla de color que el relleno, dando una impresión de que los polígonos no tiene líneas exteriores.

Vamos a utilizar la misma expresión que utilizamos para el color. Al aceptar veremos algo así:

El siguiente paso es copiar y pegar este estilo en todas las categorías que tenemos. Para ello, vamos a pinchar en el botón «Cambiar…» de la parte superior y asegurarnos de que tiene el estilo personalizado que hemos definido. Hecho esto, iremos seleccionando una a una todas las categorías y pinchamos en el botón «Cambiar…» para aplicar nuestra simbología. Deberíamos acabar con todas las categorías con la misma simbología:

 

Ya solo quedaría ir categoría por categoría asignándole su color característico. Gracias a las expresiones que hemos usado, cada categoría cogerá el color de relleno para elaborar el gradiente. Utilizando el color típico de cada partido nos quedaría un mapa con el siguiente aspecto:

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (5 votos, promedio: 5,00 de 5)

Cargando...

Formación de calidad impartida por profesionales