typestar

De los datos al gráfico en un solo pipeline en R

El hábito tidyverse: reformar y luego graficar, sin una variable intermedia.

library(dplyr)
library(tidyr)
library(ggplot2)

wide <- tibble(
  lang = c("r", "python", "sql"),
  week_1 = c(88, 99, 70),
  week_2 = c(92, 104, 74),
  week_3 = c(96, 101, 79)
)

plot <- wide |>
  pivot_longer(starts_with("week"), names_to = "week", values_to = "tpm",
               names_prefix = "week_", names_transform = list(
                 week = as.integer)) |>
  mutate(improvement = tpm - first(tpm), .by = lang) |>
  ggplot(aes(week, tpm, colour = lang)) +
  geom_line(linewidth = 1) +
  geom_point(size = 2) +
  scale_x_continuous(breaks = 1:3) +
  labs(title = "Three weeks", y = "tpm", x = "week") +
  theme_minimal()

print(nrow(plot$data))
ggsave(tempfile(fileext = ".png"), plot, width = 5, height = 3, dpi = 100)

Cómo funciona

  1. El pipe lleva los datos hasta ggplot.
  2. + continúa el gráfico; |> continúa los datos.
  3. Una sola expresión, así nada a medio armar se escapa.

El intento, en números

Líneas
25
Caracteres a escribir
677
Tokens
207
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 118 segundos.

Escribe este fragmento

Paso 3 de 3 en Rematar un gráfico; paso 14 de 15 en ggplot2.

← Anterior Siguiente →