Ich möchte mehrere Plots erstellen, die die gleiche x, aber verschiedene y's haben, die purrr-Paketmethode verwenden. Das heißt, ich möchte die Funktionen map() oder walk() verwenden, um dies auszuführen.ggplot mit purrr map(), um dasselbe x mit mehreren y's zu plotten
Verwendung von mtcars-Datensätzen zur Vereinfachung.
ggplot(data = mtcars, aes(x = hp, y = mpg)) + geom_point()
ggplot(data = mtcars, aes(x = hp, y = cyl)) + geom_point()
ggplot(data = mtcars, aes(x = hp, y = disp)) + geom_point()
bearbeiten Bisher habe ich versucht,
y <- list("mpg", "cyl", "disp")
mtcars %>% map(y, ggplot(., aes(hp, y)) + geom_point()
Haben Sie schon etwas probiert? Wo bist du stecken geblieben? – aosmith
Ich hatte versucht, eine Liste meiner y-Variablen 'y <- Liste (" mpg "," cyl "," disp ") zu erstellen und diese als mein .x-Argument in map() zu verwenden. Für das Argument .f. Ich habe 'ggplot (data =., Aes (x = hp, y = y)) + geom_point()' verwendet. Beachten Sie, dass ich angefangen hatte, indem ich in der Map-Funktion von mtcars eingab, so dass ich die Daten mit '.' anrief. Ich lernte aus der Antwort unten (Danke an MrFlick), dass die aes_string() -Funktion für die Aufrufe Ihrer Ästhetik verwendet werden kann. Ich wusste auch nicht, wie man eine anonyme Funktion oder eine Formel verwendet, um die gewünschten Ergebnisse zu erzielen. – tictacjoe