Pandas: cara membuat plot batang dari tab silang
Anda dapat menggunakan metode berikut untuk membuat diagram batang guna memvisualisasikan jumlah di tab silang Pandas:
Metode 1: Membuat Plot Batang Berkelompok
import matplotlib. pyplot as plt my_crosstab. plot (kind=' bar ')
Metode 2: Buat Plot Batang Bertumpuk
import matplotlib. pyplot as plt my_crosstab. plot (kind=' bar ', stacked= True )
Contoh berikut menunjukkan cara menggunakan masing-masing metode ini dalam praktik dengan tab silang pandas berikut:
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
Contoh 1: Buat plot batang yang dikelompokkan dari tab silang
Kita dapat menggunakan sintaks berikut untuk membuat plot batang yang dikelompokkan dari tab silang:
import matplotlib. pyplot as plt #create grouped bar plot my_crosstab. plot (kind=' bar ', rot= 0 )
Catatan : Argumen rot=0 memutar label sumbu x 90 derajat agar lebih mudah dibaca.
Sumbu x menampilkan nama tim sementara bilah yang dikelompokkan menampilkan jumlah frekuensi setiap posisi.
Misalnya, kita dapat melihat:
- Ada 1 pemain di tim A dengan posisi F.
- Ada 2 pemain di tim A dengan posisi G.
Dan seterusnya.
Contoh 2: Membuat Plot Batang Bertumpuk dari Tab Silang
Kita dapat menggunakan sintaks berikut untuk membuat plot batang bertumpuk dari tab silang:
import matplotlib. pyplot as plt #create stacked bar plot my_crosstab. plot (kind=' bar ', stacked= True , rot= 0 )
Catatan : Argumen stacked=True memungkinkan kita membuat plot batang bertumpuk, bukan plot batang yang dikelompokkan.
Sumbu x menampilkan nama tim sementara bilah bertumpuk menampilkan jumlah frekuensi setiap posisi.
Misalnya, kita dapat melihat:
- Ada 1 pemain di tim A dengan posisi F.
- Ada 2 pemain di tim A dengan posisi G.
- Total ada 3 pemain di Tim A.
Dan seterusnya.
Jenis plot ini sangat berguna ketika kita ingin memvisualisasikan jumlah total item untuk setiap nilai unik pada sumbu x.
Catatan : Anda dapat menemukan dokumentasi lengkap fungsi pandas crosstab() di sini .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas panda umum lainnya:
Pandas: Cara membuat tab silang dengan persentase
Pandas: Cara menggunakan aggfunc di fungsi crosstab()
Pandas: Cara memberi anotasi pada batang di plot batang