So ordnen sie elemente auf der x-achse in ggplot2 an


Sie können die folgende grundlegende Syntax verwenden, um Elemente auf der x-Achse eines Diagramms in ggplot2 anzuordnen:

 ggplot(df, aes(x=factor(x_var, level=c(' value1 ', ' value2 ', ' value3 ')), y=y_var)) +
  geom_col()

Die folgenden Beispiele zeigen, wie Sie diese Syntax in der Praxis anwenden können.

Beispiel: Bestellen Sie Elemente auf der x-Achse in ggplot2

Angenommen, wir haben den folgenden Datenrahmen in R, der die von verschiedenen Basketballteams erzielten Punkte zeigt:

 #create data frame
df <- data. frame (team=c('Mavs', 'Heat', 'Nets', 'Lakers'),
                 dots=c(100, 122, 104, 109))

#view data frame
df

    team points
1 Mavs 100
2 Heat 122
3 Nets 104
4 Lakers 109

Wenn wir ein Balkendiagramm erstellen, um die von jedem Team erzielten Punkte zu visualisieren, sortiert ggplot2 die Balken automatisch alphabetisch:

 library (ggplot2)

#create bar plot
ggplot(df, aes(x=team, y=points)) +
  geom_col() 

Um eine Reihenfolge für die Balken auf der x-Achse anzugeben, können wir das Level- Argument wie folgt verwenden:

 library (ggplot2)

#create bar plot with specific axis order
ggplot(df, aes(x=factor(team, level=c(' Mavs ', ' Heat ', ' Nets ', ' Lakers ')), y=points)) +
  geom_col() 

Die Balken befinden sich jetzt genau in der Reihenfolge, die wir im Level- Argument angegeben haben.

Sie können xlab() auch verwenden, um die x-Achse in einen leichter lesbaren Namen umzubenennen:

 library (ggplot2)

#create bar plot with specific axis order
ggplot(df, aes(x=factor(team, level=c(' Mavs ', ' Heat ', ' Nets ', ' Lakers ')), y=points)) +
  geom_col() +
  xlab(' Team ') 

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in ggplot2 ausführen:

So drehen Sie Achsenbeschriftungen in ggplot2
So legen Sie Achsenumbrüche in ggplot2 fest
So legen Sie Achsengrenzen in ggplot2 fest
So ändern Sie Legendenbeschriftungen in ggplot2

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert