Problembeschreibung
Ich habe Tausende von Linien (~ 4000), die ich zeichnen möchte. Es ist jedoch nicht möglich, alle Linien mit zu zeichnen geom_line()
und nur alpha=0.1
zu veranschaulichen, wo es eine hohe Liniendichte gibt und wo nicht. Ich bin in Python auf etwas Ähnliches gestoßen , besonders die zweite Handlung der Antworten sieht wirklich gut aus, aber ich weiß jetzt nicht, ob etwas Ähnliches in erreicht werden kann ggplot2
. Also so etwas wie das:
Ein Beispieldatensatz
Es wäre viel sinnvoller, dies mit einem Satz zu demonstrieren, der ein Muster zeigt, aber im Moment habe ich nur zufällige Sinuskurven generiert:
set.seed(1)
gen.dat <- function(key) {
c <- sample(seq(0.1,1, by = 0.1), 1)
time <- seq(c*pi,length.out=100)
val <- sin(time)
time = 1:100
data.frame(time,val,key)
}
dat <- lapply(seq(1,10000), gen.dat) %>% bind_rows()
Versuchte Heatmap
Ich habe eine Heatmap ausprobiert wie hier beantwortet Diese Heatmap berücksichtigt jedoch nicht die Verbindung von Punkten über die gesamte Achse (wie in einer Linie), sondern zeigt die "Wärme" pro Zeitpunkt.
Frage
Wie können wir in R mitggplot2
eine Heatmap von Linien zeichnen, die der in der ersten Abbildung gezeigten ähnlich sind?