So ändern sie die reihenfolge der facetten in ggplot2 (mit beispiel)
Sie können die folgende grundlegende Syntax verwenden, um die Reihenfolge der Facetten in ggplot2 anzugeben:
p+
facet_grid(~factor(my_variable, levels=c(' val1 ', ' val2 ', ' val3 ', ...)))
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Ändern Sie die Reihenfolge der Facetten in ggplot2
Angenommen, wir haben den folgenden Datenrahmen in R:
#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C', 'D', 'D'),
points=c(8, 14, 20, 22, 25, 29, 30, 31),
assists=c(10, 5, 5, 3, 8, 6, 9, 12))
#view data frame
df
team points assists
1 to 8 10
2 to 14 5
3 B 20 5
4 B 22 3
5 C 25 8
6 C 29 6
7 D 30 9
8 D 31 12
Der folgende Code zeigt, wie Sie mit facet_grid() ein Raster erstellen, das ein Streudiagramm der Assists im Vergleich zu den Punkten für jedes Team anzeigt:
library (ggplot2)
#create multiple scatter plots using facet_grid
ggplot(df, aes (assists, points)) +
geom_point() +
facet_grid(.~team)
Standardmäßig ordnet ggplot2 die Streudiagramme basierend auf den Werten an, die zuerst in der Teamvariablen des Datenrahmens erscheinen.
Wir können jedoch „team“ in eine Faktorvariable umwandeln und das Argument „ levels “ verwenden, um die Reihenfolge anzugeben, in der die Teams im Diagramm platziert werden sollen:
library (ggplot2)
#create multiple scatter plots using facet_grid with specific order
ggplot(df, aes (assists, points)) +
geom_point() +
facet_grid(~factor(team, levels=c(' C ', ' D ', ' A ', ' B ')))
Beachten Sie, dass die Punktwolken jetzt gemäß der Reihenfolge sortiert sind, die wir im Ebenenargument angegeben haben: C, D, A, B.
Der Vorteil dieses Ansatzes besteht darin, dass wir die zugrunde liegenden Daten nicht wirklich ändern.
Stattdessen ändern wir nur die Ebenen in der Funktion facet_grid() .
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in ggplot2 ausführen:
So ändern Sie die Schriftgröße in ggplot2
So entfernen Sie eine Legende in ggplot2
So drehen Sie Achsenbeschriftungen in ggplot2