Gráfica de líneas en R con ggplot2, con datos reales
Vamos a graficar la inflación anual de México con los datos que publica grafoso. Lo que ves abajo son las gráficas que produce este código.
Los datos
library(tidyverse)
inflacion <- read_csv("https://grafoso.com/datos/inflacion-mexico.csv", show_col_types = FALSE)
names(inflacion) <- c("anio", "inflacion")
tail(inflacion, 3)# A tibble: 3 × 2
anio inflacion
<dbl> <dbl>
1 2023 5.53
2 2024 4.72
3 2025 3.81La gráfica básica
ggplot2 se arma por capas: datos, ejes con aes() y una forma, geom_line().
ggplot(inflacion, aes(x = anio, y = inflacion)) +
geom_line()
Lista para publicar
Cada + agrega una capa: la meta, el color, los títulos y un tema limpio.
ggplot(inflacion, aes(x = anio, y = inflacion)) +
annotate("segment", x = 2003, xend = 2025, y = 3, yend = 3, linetype = "dashed", color = "gray50") +
geom_line(color = "#1d5bd8", linewidth = 1) +
annotate("text", x = 2014, y = 1.2, label = "Meta de Banxico desde 2003: 3 %", color = "gray30") +
labs(
title = "Inflación anual en México",
subtitle = "Precios al consumidor, en por ciento",
x = NULL,
y = NULL,
caption = "Fuente: Banco Mundial, en grafoso.com"
) +
theme_minimal(base_size = 13)
Preguntas frecuentes
¿Puedo usar otros datos de grafoso?
Sí. Muchas páginas con datos ofrecen su CSV. Revisa su fuente original en cada artículo.
¿Cómo comparo dos series?
Pon los datos en formato largo con una columna que las identifique, y usa aes(color = serie).