Pandy: jak utworzyć wykres słupkowy z tabeli przestawnej


Do utworzenia wykresu słupkowego umożliwiającego wizualizację liczebności w tabeli przestawnej Pandy można użyć następujących metod:

Metoda 1: Utwórz skupiony wykres słupkowy

 import matplotlib. pyplot as plt

my_crosstab. plot (kind=' bar ')

Metoda 2: Utwórz skumulowany wykres słupkowy

 import matplotlib. pyplot as plt

my_crosstab. plot (kind=' bar ', stacked= True )

Poniższe przykłady pokazują, jak w praktyce zastosować każdą z tych metod z następującą tabelą przestawną pand:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C '],
                   ' position ':['G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [22, 25, 24, 39, 34, 20, 18, 17, 20, 19, 22]})

#create crosstab to display count of players by team and position
my_crosstab = pd. crosstab (df. team , df. position )

#view crosstab
print (my_crosstab)

FG position
team          
AT 12
B 3 1
C 2 2

Przykład 1: Utwórz zgrupowany wykres słupkowy na podstawie tabeli przestawnej

Aby utworzyć zgrupowany wykres słupkowy na podstawie tabeli przestawnej, możemy zastosować następującą składnię:

 import matplotlib. pyplot as plt

#create grouped bar plot
my_crosstab. plot (kind=' bar ', rot= 0 ) 

pandy pogrupowały wykres słupkowy z tabeli przestawnej

Uwaga : Argument rot=0 obraca etykiety osi X o 90 stopni, aby były łatwiejsze do odczytania.

Oś x wyświetla nazwy zespołów, podczas gdy pogrupowane słupki przedstawiają częstotliwość występowania każdej pozycji.

Na przykład możemy zobaczyć:

  • W drużynie A znajduje się 1 zawodnik na pozycji F.
  • W drużynie A na pozycji G znajduje się 2 zawodników.

I tak dalej.

Przykład 2: Utwórz skumulowany wykres słupkowy z tabeli przestawnej

Aby utworzyć skumulowany wykres słupkowy z tabeli przestawnej, możemy zastosować następującą składnię:

 import matplotlib. pyplot as plt

#create stacked bar plot
my_crosstab. plot (kind=' bar ', stacked= True , rot= 0 ) 

Uwaga : Argument stacked=True umożliwił nam utworzenie skumulowanego wykresu słupkowego zamiast zgrupowanego wykresu słupkowego.

Oś x wyświetla nazwy drużyn, podczas gdy ułożone słupki przedstawiają liczbę częstotliwości dla każdej pozycji.

Na przykład możemy zobaczyć:

  • W drużynie A znajduje się 1 zawodnik na pozycji F.
  • W drużynie A na pozycji G znajduje się 2 zawodników.
  • W drużynie A jest łącznie 3 zawodników.

I tak dalej.

Ten typ wykresu jest szczególnie przydatny, gdy chcemy zwizualizować całkowitą liczbę elementów dla każdej unikalnej wartości na osi x.

Uwaga : pełną dokumentację funkcji crosstab() pandy można znaleźć tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania związane z pandą:

Pandy: Jak utworzyć tabelę przestawną z wartościami procentowymi
Pandy: Jak używać aggfunc w funkcji crosstab().
Pandy: Jak opisywać słupki na wykresie słupkowym

Dodaj komentarz

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