Etiquetas y anotación en R
Títulos, notas al pie y cómo señalar la única observación que importa.
library(ggplot2)
library(dplyr)
runs <- tibble(day = 1:6, tpm = c(88, 92, 96, 99, 104, 101))
best <- slice_max(runs, tpm, n = 1)
plot <- ggplot(runs, aes(day, tpm)) +
geom_line() +
geom_point() +
geom_text(aes(label = tpm), vjust = -0.8, size = 3) +
annotate("segment", x = best$day, xend = best$day, y = 80, yend = best$tpm,
linetype = "dashed", colour = "gray50") +
annotate("label", x = best$day, y = 82, label = "best run", size = 3) +
labs(title = "Six sessions", subtitle = "tokens per minute",
caption = "typestar.io", x = "session", y = NULL) +
ylim(80, 110)
print(length(plot$layers))
ggsave(tempfile(fileext = ".png"), plot, width = 5, height = 3, dpi = 100)
Cómo funciona
labsdefine cada elemento de texto en una sola llamada.annotatedibuja una marca única, no una capa mapeada.geom_textmapea una columna de etiquetas sobre los datos.
El intento, en números
- Líneas
- 19
- Caracteres a escribir
- 671
- Tokens
- 216
- Ritmo de tres estrellas
- 105 tpm
Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 123 segundos.
Paso 1 de 3 en Rematar un gráfico; paso 12 de 15 en ggplot2.