Monday, September 8, 2025


Creación de Mapa Interactivo de Estaciones Meteorológicas de España

🌦️ Introducción: Estaciones meteorológicas en España 📍¿Qué son y para qué sirven? Las estaciones meteorológicas son infraestructuras que recogen de…

By tmnturbo@gmail.com , in Sin categoría , at 2 de mayo de 2025

🌦️ Introducción: Estaciones meteorológicas en España

📍¿Qué son y para qué sirven?

Las estaciones meteorológicas son infraestructuras que recogen de forma sistemática datos sobre:

  • Temperatura
  • Precipitaciones
  • Humedad relativa
  • Velocidad y dirección del viento
  • Presión atmosférica
  • Radiación solar, etc.

👉 Estos datos son fundamentales para:

  • La predicción del tiempo
  • El seguimiento del cambio climático
  • La gestión de emergencias (tormentas, incendios, inundaciones…)
  • La agricultura, el transporte, el turismo y la salud pública

🏛️ ¿Quién gestiona las estaciones en España?

La red principal depende de:

🟦 AEMET (Agencia Estatal de Meteorología)

  • Organismo autónomo dependiente del Ministerio para la Transición Ecológica y el Reto Demográfico.
  • Administra la Red de Estaciones Meteorológicas Automáticas y Manuales.
  • También colabora con estaciones de organismos regionales y privados.

📌 Red principal:

  • EMA (Estaciones Meteorológicas Automáticas): envían datos en tiempo real (cada 10 minutos o 1h).
  • EMM (Manual): personal técnico toma medidas a diario, muy útiles en zonas donde no hay cobertura automática.
  • Estaciones de montaña o especiales: control de nieve, heladas, etc.

Otras redes complementarias:

  • Red de estaciones de calidad del aire (MITECO y CCAA)
  • Estaciones universitarias o de investigación
  • Redes agrícolas autonómicas (p. ej., SIAR del Ministerio de Agricultura)
  • Estaciones privadas (restringidas o colaborativas)

📊 ¿Qué tipos de estaciones existen?

Tipo de estaciónAutomáticaManualMixtaEspecial
Medición continua
Operador humano
Uso principalPredicción, alertasDatos climáticosMixtaAlta montaña, nieve, etc.

📡 ¿Dónde están ubicadas?

  • La AEMET distribuye sus estaciones en función del clima, altitud, cobertura y necesidades operativas.
  • Hay más de 800 estaciones meteorológicas activas en España, aunque no todas envían datos en tiempo real.
  • Se ubican tanto en zonas urbanas como rurales, aeropuertos, puertos, parques naturales y zonas agrícolas.

📥 ¿Dónde se pueden conseguir los datos?

  1. AEMET Open Data:
    https://opendata.aemet.es/
    Requiere registro con API Key. Permite obtener:
    • Ubicación de estaciones activas
    • Tipología
    • Datos horarios, diarios y climatológicos
  2. Estaciones con datos públicos accesibles:
  3. Otros portales secundarios:
    • Meteogalicia (Galicia)
    • Meteocat (Cataluña)
    • SIAR (Red Agroclimática)
    • Euskalmet (Euskadi)


🗺️ Objetivo del proyecto

👉 Crear un mapa en Datawrapper que:

  • Muestre las estaciones meteorológicas activas de AEMET.
  • Diferencie por tipo: automática, manual, especial.
  • Incluya tooltip con: nombre, altitud, temperatura, humedad y otros datos.
  • Opcional: permitir filtros por comunidad o tipo de estación.

🧭 DOCUMENTACIÓN DEL PROCESO: Estaciones Meteorológicas AEMET + Mapa en Datawrapper


🔹 Objetivo del ejercicio

Obtener, limpiar y preparar un dataset georreferenciado con las estaciones meteorológicas activas de AEMET en España, con información básica de ubicación y variables atmosféricas, para su visualización en un mapa interactivo con Datawrapper.


🔹 Pasos realizados

🟩 1. Registro en AEMET Open Data


🟩 2. Acceso al endpoint de observación meteorológica

  • Se identificó el endpoint correcto:
  • https://opendata.aemet.es/opendata/api/observacion/convencional/todas
  • Este endpoint no entrega los datos directamente, sino un JSON con una URL temporal y privada que expira rápidamente.

🟩 3. Primera dificultad: las URLs caducan

  • Intentar descargar directamente el JSON con una URL antigua da error 404.
  • Se solucionó haciendo la petición directamente desde R con httr y extrayendo la URL de datos en tiempo real.

🟩 4. Segunda dificultad: errores de codificación (UTF-8)

  • Al cargar el JSON con fromJSON(), R lanzó:
  • lexical error: invalid bytes in UTF8 string
  • Motivo: AEMET publica texto con caracteres corruptos (como �) en nombres de localidades mal codificadas (ej. VILAFRANCA DEL PENEDÈS).
  • Se solucionó leyendo el JSON como texto (readLines) y limpiando con iconv().

🟩 5. Extracción y selección de campos clave

  • Se filtraron las siguientes variables:
    • idema: ID oficial de estación
    • ubi: ubicación textual
    • lat, lon: coordenadas
    • alt: altitud
    • ta, hr, prec: temperatura, humedad y precipitación
    • fint: fecha y hora de observación

🟩 6. Exportación a CSV personalizado

  • El archivo se guardó en la ruta local del usuario:
  • E:/02_estaciones_meteo/estaciones_aemet.csv

🔹 Script definitivo usado

# —————————————–

# MAPA DE ESTACIONES METEOROLÓGICAS AEMET

# Descarga, limpieza y exportación a CSV

# —————————————–

library(httr)

library(jsonlite)

library(dplyr)

library(readr)

# 1. API Key personal (reemplazar con la tuya entre comillas)

api_key <- «PON_AQUI_TU_API_KEY»

# 2. Petición a AEMET

respuesta <- GET(

  url = «https://opendata.aemet.es/opendata/api/observacion/convencional/todas»,

  add_headers(api_key = api_key)

)

# 3. Extraer URL temporal de datos

contenido <- content(respuesta, as = «parsed», simplifyVector = TRUE)

url_datos <- contenido$datos

# 4. Leer JSON como texto y corregir codificación

json_texto <- readLines(url_datos, encoding = «UTF-8», warn = FALSE)

json_completo <- iconv(paste(json_texto, collapse = «»), from = «UTF-8», to = «UTF-8», sub = «»)

# 5. Convertir a tabla

datos_json <- fromJSON(json_completo)

datos <- as_tibble(datos_json)

# 6. Seleccionar columnas clave

estaciones <- datos %>%

  select(

    idema,

    ubi,

    lat, lon,

    alt,

    ta,

    hr,

    prec,

    fint

  )

# 7. Guardar en CSV personalizado

write_csv(estaciones, «E:/02_estaciones_meteo/estaciones_aemet.csv»)


🔹 Tiempo estimado invertido

  • 📥 Registro + API key: 5 min
  • 🔧 Detección y resolución de errores: 1 hora
  • 📤 CSV final listo para visualización: ✔️

🗺️ Documentación del Mapa: Estaciones Meteorológicas Activas de AEMET


🎯 Objetivo

Visualizar la distribución geográfica de las estaciones meteorológicas activas pertenecientes a la red de observación convencional de AEMET (Agencia Estatal de Meteorología) en un mapa interactivo limpio, legible y profesional mediante Datawrapper.


📍 Datos utilizados

  • Fuente: API de AEMET Open Data
  • Formato: CSV generado a partir de una consulta automatizada vía R
  • Atributos clave:
    • idema (ID de estación)
    • ubi (ubicación)
    • lat, lon (coordenadas)
    • alt (altitud en metros)
    • ta, hr, prec (datos meteorológicos, como valor informativo)
    • fint (fecha/hora del último dato)

🛠️ Herramienta de visualización: Datawrapper

Se utilizó https://app.datawrapper.de, una plataforma gratuita y profesional para visualización de datos georreferenciados.


🧭 Pasos realizados

1. Creación del mapa

  • Tipo de mapa: “España » Provincias” como base geográfica.
  • Se seleccionó la opción “Tamaño normal” para incrustación contenida.
  • Se cargó el CSV generado desde RStudio.

2. Configuración del mapa

  • Visualización por puntos, sin codificación de color por variable.
  • Todos los símbolos tienen color uniforme (azul claro) y tamaño fijo.
  • Se activó el mapa de inserción para mostrar Canarias sin distorsionar la visualización principal.

3. Tooltip personalizado

Se definió una descripción emergente clara, con los siguientes elementos:

<b>{{ubi}}</b> (ID: {{idema}})<br>

📏 <b>Altitud:</b> {{alt}} m<br>

🌡️ <b>Temp:</b> {{ta}} ºC • 💧 <b>HR:</b> {{hr}} %<br>

🌧️ <b>Precipitación:</b> {{prec}} mm<br>

🕒 <b>Última actualización:</b> {{fint}}

4. Texto editorial y contexto

  • Título: 🛰️ Mapa de Estaciones Meteorológicas Activas de AEMET
  • Descripción: Distribución geográfica de las estaciones meteorológicas activas pertenecientes a la red de observación convencional de la Agencia Estatal de Meteorología (AEMET).
  • Nota informativa:
    Este mapa se centra en la Península Ibérica. También existen estaciones activas en Baleares y Canarias, visibles al hacer zoom manual.
  • Fuente: AEMET Open Data
  • Enlace a los datos: https://opendata.aemet.es
  • Autoría: JCLBallesteros

📤 Publicación

  • El mapa fue publicado en modo “Tamaño normal”, embebido en una tarjeta visual.
  • Se generó un enlace público y un iframe para su posible integración en una web o informe.

🔄 Actualización (pendiente de automatizar)

Actualmente el mapa se actualiza manualmente tras generar el CSV desde un script R.
Se prevé automatizar esta actualización mediante:

  • Subida del CSV a un repositorio público (ej. GitHub Pages)
  • Vinculación de Datawrapper a una URL externa de datos actualizables
  • Activación del modo de actualización automática diaria (hasta 24 veces/día)

🌍 Nota sobre Canarias y Baleares

Durante el análisis de los datos obtenidos desde la API de AEMET, se observó que no se incluían estaciones activas en Canarias en la respuesta JSON correspondiente a la red de observación convencional. Por tanto, estas no aparecen representadas en el mapa.

Se tomó la decisión de:

  • Excluir Canarias del mapa, dado que no hay datos disponibles actualmente.
  • Mantener Baleares, donde sí se encontraron registros válidos con geolocalización.
  • Evitar mostrar zonas vacías que puedan inducir a error o sugerir falta de cobertura cuando el problema es puramente de disponibilidad de datos.

Comments


Deja una respuesta


Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *