---
title: "Extending climaemet"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Extending climaemet}
%\VignetteEncoding{UTF-8}
%\VignetteEngine{knitr::rmarkdown}
resource_files:
- vignettes/example-gif.gif
---
**climaemet** provides several functions for accessing a selection of endpoints
of the [AEMET API tool](https://opendata.aemet.es/dist/index.html?). However,
this package does not cover in full all the capabilities of the API.
For that reason, we provide the `get_data_aemet()` function, that allows to
access any API endpoint freely. The drawback is that the user would need to
handle the results by him/herself.
``` r
library(climaemet)
```
## Example: Normalized text
Some API endpoints, as `predicciones-normalizadas-texto`, provides the results
as plain text on natural language. These results are not parsed by
**climaemet**, but can be retrieved as this:
``` r
# endpoint, today forecast
today <- "/api/prediccion/nacional/hoy"
# Metadata
knitr::kable(get_metadata_aemet(today))
```
|unidad_generadora |descripcion |periodicidad |formato |copyright |notaLegal |
|:-------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------|:-------------------------------------------------------------------------------------------------------|:----------------------------------|
|Grupo Funcional de Predicción de Referencia |Predicción general nacional para hoy / mañana / pasado mañana / medio plazo (tercer y cuarto día) / tendencia (del quinto al noveno día) |Disponibilidad. Para hoy, solo se confecciona si hay cambios significativos. Para mañana y pasado mañana diaria a las 15:00 h.o.p.. Para el medio plazo diaria a las 16:00 h.o.p.. La tendencia, diaria a las 18:30 h.o.p. |ascii/txt |© AEMET. Autorizado el uso de la información y su reproducción citando a AEMET como autora de la misma. |https://www.aemet.es/es/nota_legal |
``` r
# Data
pred_today <- get_data_aemet(today)
#>
#> Results are MIME type: text/plain
#> Returning data as string
```
``` r
# Produce a result
clean <- gsub("\r", "\n", pred_today, fixed = TRUE)
clean <- gsub("\n\n\n", "\n", clean, fixed = TRUE)
cat(paste("---\n\n", clean, "\n---"))
```
---
AGENCIA ESTATAL DE METEOROLOGÍA
PREDICCIÓN GENERAL PARA ESPAÑA
DÍA 24 DE JUNIO DE 2025 A LAS 08:53 HORA OFICIAL
PREDICCIÓN VÁLIDA PARA EL MARTES 24
A.- FENÓMENOS SIGNIFICATIVOS
Tormentas y chubascos localmente fuertes o muy fuertes con granizo
y rachas muy fuertes en el centro y tercio norte peninsular.
Temperaturas máximas significativamente elevadas en zonas de la
mitad oriental peninsular y Baleares.
B.- PREDICCIÓN
Se espera un día marcado por el paso de una dana por el oeste de
la península. Se espera abundante nubosidad de evolución con
chubascos acompañados de tormentas en amplias zonas de la
Península, siendo poco probables en mitad sudeste y sin
esperarlos en los litorales del este peninsular y Baleares. Éstas
se prevén acompañadas de chubascos fuertes o muy fuertes, con
granizo que podría ser grande y rachas muy fuertes. Aunque se
espera que se extiendan por amplias zonas del centro y tercio
norte, serían las zonas más adversas el sistema Central, meseta
norte y entorno de la cordillera Cantábrica. En el Cantábrico y
el norte de Galicia, los cielos permanecerán nubosos durante la
mayor parte del día. En Canarias, cielos poco nubosos o
despejados al sur y nubosos al norte.
Probables brumas y bancos de niebla matinales en Galicia y
Cantábrico. Entrada de calima en Alborán y el sudoeste
peninsular, que podría dar lugar a lluvia de barro.
Se prevé que las temperaturas máximas asciendan en el norte de
Galicia y el Cantábrico, incluso de forma notable en la mitad
oriental; no se esperan cambios en el nordeste ni en los
archipiélagos, descendiendo en el resto, de forma incluso notable
en la mitad oeste. Aún así, se espera superar los 34-36 en el
este de Andalucía, Baleares y en el sudeste y el nordeste
peninsular. Incluso alcanzarán los 38-40 en valles del nordeste y
del este de Andalucía. Las mínimas en ascenso ligero en el
tercio norte y en descenso en la mitad oeste. Sin cambios
significativos, ni en el resto de la Península, ni en las islas.
Soplarán vientos flojos en la Península y Baleares, algo más
intensos en litorales del nordeste en el Cantábrico y Galicia y
en el sudeste. Predominio de la componente este en Baleares y
mitad este peninsular, de poniente en el Estrecho y de sur en el
resto. En Canarias, alisios con intervalos de fuerte y rachas muy
fuertes en zonas expuestas.
---
## Example: Maps
AEMET also provides map data, usually on `image/gif` format. One way to get this
kind of data is as follows:
``` r
# Endpoint of a map
a_map <- "/api/mapasygraficos/analisis"
# Metadata
knitr::kable(get_metadata_aemet(a_map))
```
|unidad_generadora |descripción |periodicidad |formato |copyright |notaLegal |
|:---------------------------------|:------------------------------------------|:-----------------------------------------------------------------------------------------|:---------|:-------------------------------------------------------------------------------------------------------|:----------------------------------|
|Grupo Funcional de Jefes de Turno |Mapas de análisis de frentes en superficie |Dos veces al día, a las 02:00 y 14:00 h.o.p. en invierno y a las 03:00 y 15:00 en verano. |image/gif |© AEMET. Autorizado el uso de la información y su reproducción citando a AEMET como autora de la misma. |https://www.aemet.es/es/nota_legal |
``` r
the_map <- get_data_aemet(a_map)
#>
#> Results are MIME type: image/gif
#> Returning raw data
# Write as gif and include it
giffile <- "example-gif.gif"
writeBin(the_map, giffile)
# Display on the vignette
knitr::include_graphics(giffile)
```