Kiedy używać stat=”identity” na wykresach ggplot2


Istnieją dwa popularne sposoby używania funkcji geom_bar() w ggplot2 do tworzenia wykresów słupkowych:

Metoda 1: Użyj geom_bar()

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

Domyślnie geom_bar() po prostu zliczy wystąpienia każdej unikalnej wartości zmiennej x i użyje słupków do wyświetlenia zliczeń.

Metoda 2: Użyj geom_bar(stat=”tożsamość”)

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

Jeśli podasz argument stat=”tożsamość” do geom_bar(), to mówisz R, aby obliczył sumę zmiennej y, pogrupowanej według zmiennej x i użył słupków do wyświetlenia sum.

Poniższe przykłady ilustrują różnicę między tymi dwiema metodami przy użyciu następującej ramki danych w języku R, która pokazuje punkty zdobyte przez koszykarzy z różnych drużyn:

 #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

Przykład 1: Używanie geom_bar()

Poniższy kod pokazuje, jak używać funkcji geom_bar() do tworzenia wykresu słupkowego wyświetlającego liczbę każdej unikalnej wartości w kolumnie zespołu :

 library (ggplot2)

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

Oś X wyświetla unikalne wartości w kolumnie Zespół , a oś Y wyświetla liczbę wystąpień każdej unikalnej wartości.

Ponieważ każda unikalna wartość pojawiła się 4 razy, wysokość każdego słupka na wykresie wynosi 4.

Przykład 2: Użycie geom_bar(stat=”identity”)

Poniższy kod pokazuje jak użyć funkcji geom_bar() z argumentem stat=”identity” do stworzenia wykresu słupkowego wyświetlającego sumę wartości w kolumnie punktów , pogrupowanych według zespołu :

 library (ggplot2)

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

geom_bar ze stat="identity" w ggplot2

Oś X wyświetla unikalne wartości w kolumnie zespołu , a oś Y wyświetla sumę wartości w kolumnie punktów dla każdego zespołu.

Na przykład:

  • Suma punktów drużyny A wynosi 19.
  • Suma punktów drużyny B wynosi 27.
  • Suma punktów dla drużyny C wynosi 35.

Używając stat=”identity” w funkcji geom_bar() możemy zamiast zliczeń wyświetlić sumę wartości danej zmiennej w naszej ramce danych.

Uwaga : Aby stat=”tożsamość” działała poprawnie, musisz podać zarówno zmienną x, jak i zmienną ay w argumencie aes() .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w ggplot2:

Jak dostosować odstęp między słupkami w ggplot2
Jak usunąć NA z działki w ggplot2
Jak zmienić kolory słupków na skumulowanym wykresie Bart w ggplot2

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *