Ich versuche mehrere Faktoren Spalten in einem Schritt zu plotten, mit ggplot2 als Plotten-Engine.Wie plotten mehrere Faktor Spalten mit ggplot?
mehr metrische Spalt Plotten ist einfach:
library(ggplot2)
library(dplyr) # dplyr 0.5.0 select_if
library(purrr)
data(diamonds)
diamonds %>%
select_if(is.numeric) %>%
gather %>%
ggplot(aes(x = value)) +
geom_histogram() +
facet_wrap(~key)
Allerdings habe ich in Plotten mehrere Faktor (qualitativ) Spalten in einem Schuss nicht Erfolg habe. Ich möchte Spalten programmgesteuert auswählen, dh nicht direkt benennen.
habe ich versucht, diese, aber es tut nicht ein vernünftiges Ergebnis produzieren:
diamonds %>%
select_if(is.factor) %>%
gather %>%
ggplot(aes(x = value)) + geom_bar() +
facet_wrap(~key) +
coord_flip()
Ich gehe davon aus, dass es könnte eine Lösung in dieser Richtung:
diamonds %>%
select_if(is.factor) %>%
ggplot(aes(x = .[[1]])) + geom_bar()
Wo .[[1]]
sollte durch einen Spaltenplatzhalter ersetzt werden (also hier habe ich direkt die Spalte benannt, die ich li.) Ke zu vermeiden, wie ich eine große Anzahl von Spalten in der Realität habe).
Eine For-Schleife wird wahrscheinlich die Arbeit machen, aber ich würde gerne mit dplyr dorthin gelangen.
Können Sie erklären, was Sie für ein vernünftiges Ergebnis halten würden, d. H. Wie sich Ihre zweite Zahl von Ihrer gewünschten Ausgabe unterscheidet? Ist das Hauptproblem die Tatsache, dass jedes Diagramm keine eigene Y-Achse hat (und daher die alphabetische Sortierung ziemlich bedeutungslos ist)? – mkt
#mkt, danke für deinen Kommentar, #Axeman hatte eine gute Idee, das war, was ich suchte –