## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  warning = FALSE,
  message = FALSE,
  fig.width = 7,
  fig.height = 4.5
)

# Verificar conectividad con la API del SINIA
has_api <- curl::has_internet() && tryCatch({
  con <- url("https://wp.bex.pe/portal/wp-json/esam/v1/website/marcos-ordenadores/mdea/indice-estadisticas", "r")
  close(con)
  TRUE
}, error = function(e) FALSE)

## ----setup--------------------------------------------------------------------
library(siniaR)
library(dplyr)
library(ggplot2)

## ----indicadores, eval = has_api----------------------------------------------
# Listar todos los indicadores bajo el marco MDEA (ONU)
indicadores <- sinia_indicadores(marco = "mdea")
head(indicadores, 10)

## ----buscar, eval = has_api---------------------------------------------------
# Buscar estadísticas relacionadas con calidad del aire o material particulado
aire <- sinia_buscar("pm10")
aire

## ----ficha, eval = has_api----------------------------------------------------
# Consultar la ficha técnica del indicador ID = 1 (Temperatura del aire)
ficha <- sinia_ficha(1)
ficha

## ----ficha-campos, eval = has_api---------------------------------------------
ficha$fuente
ficha$unidad_medida
ficha$periodo_serie

## ----datos-long, eval = has_api-----------------------------------------------
datos_temp <- sinia_datos(id = 1, pivot = "long")
head(datos_temp, 12)

## ----datos-wide, eval = has_api-----------------------------------------------
datos_wide <- sinia_datos(id = 1, pivot = "wide")
head(datos_wide, 6)

## ----visualizacion, eval = has_api--------------------------------------------
# Descargar serie temporal de temperatura en formato tidy
df <- sinia_datos(1, pivot = "long")

# Filtrar departamentos representativos de costa, sierra y selva
deptos <- c("Lima", "Loreto", "Cusco", "Piura", "Puno")

df |>
  filter(departamento %in% deptos, !is.na(valor)) |>
  ggplot(aes(x = anio, y = valor, color = departamento)) +
  geom_line(linewidth = 1.1) +
  geom_point(size = 2.5) +
  scale_color_manual(values = c(
    "Lima" = "#1B75BC",
    "Loreto" = "#78BE20",
    "Cusco" = "#E07A26",
    "Piura" = "#38B6FF",
    "Puno" = "#7B3F7B"
  )) +
  labs(
    title = "Evolución de la Temperatura Promedio Anual (°C)",
    subtitle = "Fuente: SINIA / SENAMHI - Perú",
    x = "Año",
    y = "Temperatura Promedio (°C)",
    color = "Departamento"
  ) +
  theme_minimal(base_family = "sans") +
  theme(
    plot.title = element_text(face = "bold", color = "#0E4B75"),
    legend.position = "bottom"
  )

## ----estadistica, eval = has_api----------------------------------------------
est <- sinia_estadistica(1, pivot = "long")
est

