Wann sollte stat=“identity“ in ggplot2-plots verwendet werden?


Es gibt zwei gängige Möglichkeiten, die Funktion geom_bar() in ggplot2 zum Erstellen von Balkendiagrammen zu verwenden:

Methode 1: Verwenden Sie geom_bar()

 ggplot(df, aes(x)) +
  geom_bar()

Standardmäßig zählt geom_bar() einfach die Vorkommen jedes einzelnen Werts für die Variable x und verwendet Balken, um die Anzahl anzuzeigen.

Methode 2: Verwenden Sie geom_bar(stat=“identity“)

 ggplot(df, aes(x, y)) +
  geom_bar(stat=" identity ")

Wenn Sie geom_bar() das Argument stat=“identity“ bereitstellen, weisen Sie R an, die Summe der Variablen y, gruppiert nach der Variablen x, zu berechnen und Balken zur Anzeige der Summen zu verwenden.

Die folgenden Beispiele veranschaulichen den Unterschied zwischen diesen beiden Methoden anhand des folgenden Datenrahmens in R, der die von Basketballspielern verschiedener Teams erzielten Punkte zeigt:

 #create data frame
df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 4 ),
                 points=c(3, 5, 5, 6, 5, 7, 7, 8, 9, 9, 9, 8))

#view data frame
df

   team points
1 to 3
2 to 5
3 to 5
4 to 6
5 B 5
6 B 7
7 B 7
8 B 8
9 C 9
10 C 9
11 C 9
12 C 8

Beispiel 1: Verwendung von geom_bar()

Der folgende Code zeigt, wie Sie mit der Funktion geom_bar() ein Balkendiagramm erstellen, das die Anzahl jedes einzelnen Werts in der Teamspalte anzeigt:

 library (ggplot2)

#create bar chart to visualize occurrence of each unique value in team column
ggplot(df, aes(team)) +
  geom_bar()

Auf der X-Achse werden die eindeutigen Werte in der Spalte „Team“ angezeigt, und auf der Y-Achse wird angezeigt, wie oft jeder eindeutige Wert aufgetreten ist.

Da jeder eindeutige Wert viermal vorkam, beträgt die Höhe jedes Balkens im Diagramm 4.

Beispiel 2: Verwendung von geom_bar(stat=“identity“)

Der folgende Code zeigt, wie Sie die Funktion geom_bar() mit dem Argument stat=“identity“ verwenden, um ein Balkendiagramm zu erstellen, das die Summe der Werte in der Punktespalte , gruppiert nach Team , anzeigt:

 library (ggplot2)

#create bar chart to visualize sum of points, grouped by team
ggplot(df, aes(team, points)) +
  geom_bar(stat=" identity ")

geom_bar mit stat="identity" in ggplot2

Die X-Achse zeigt die eindeutigen Werte in der Teamspalte und die Y-Achse zeigt die Summe der Werte in der Punktespalte für jedes Team an.

Zum Beispiel:

  • Die Summe der Punkte von Team A beträgt 19.
  • Die Gesamtpunktzahl von Team B beträgt 27.
  • Die Punktesumme für Team C beträgt 35.

Durch die Verwendung von stat=“identity“ in der Funktion geom_bar() können wir anstelle der Anzahl die Summe der Werte einer bestimmten Variablen in unserem Datenrahmen anzeigen.

Hinweis : Damit stat=“identity“ korrekt funktioniert, müssen Sie im Argument aes() sowohl eine x-Variable als auch eine ay-Variable angeben.

Zusätzliche Ressourcen

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

So passen Sie den Abstand zwischen Balken in ggplot2 an
So entfernen Sie NAs aus dem Plot in ggplot2
So ändern Sie die Balkenfarben im gestapelten Bartdiagramm in ggplot2

Einen Kommentar hinzufügen

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