Pandas: so erstellen sie ein balkendiagramm zur visualisierung der top-10-werte
Sie können die folgende grundlegende Syntax verwenden, um in Pandas ein Balkendiagramm zu erstellen, das nur die 10 häufigsten Werte in einer bestimmten Spalte enthält:
import pandas as pd import matplotlib. pyplot as plt #find values with top 10 occurrences in 'my_column' top_10 = (df[' my_column ']. value_counts ()). iloc [:10] #create bar chart to visualize top 10 values top_10. plot (kind='bar')
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Erstellen Sie in Pandas ein Balkendiagramm, um die Top-10-Werte zu visualisieren
Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über den Teamnamen und die von 500 verschiedenen Basketballspielern erzielten Punkte enthält:
import pandas as pd import numpy as np from string import ascii_uppercase import random from random import choice #make this example reproducible random. seeds (1) n.p. random . seeds (1) #createDataFrame df = pd. DataFrame ({' team ': [choice(ascii_uppercase) for _ in range(500)], ' points ': np. random . uniform (0, 20, 500)}) #view first five rows of DataFrame print ( df.head ()) team points 0 E 8.340440 1 S 14.406490 2 Z 0.002287 3 Y 6.046651 4 C 2.935118
Mit der folgenden Syntax können wir ein Balkendiagramm erstellen, das die 10 häufigsten Werte in der Teamspalte anzeigt:
import matplotlib. pyplot as plt #find teams with top 10 occurrences top_10_teams = (df[' team ']. value_counts ()).[:10] #create bar chart of top 10 teams top_10_teams. plot (kind=' bar ')
Das Balkendiagramm enthält nur die Namen der 10 häufigsten Teams.
Die x-Achse zeigt den Teamnamen und die y-Achse die Häufigkeit.
Beachten Sie, dass wir die Handlung auch anpassen können, um sie ästhetisch ansprechender zu gestalten:
import matplotlib. pyplot as plt #find teams with top 10 occurrences top_10_teams = (df[' team ']. value_counts ()).[:10] #create bar chart of top 10 teams top_10_teams. plot (kind=' bar ', edgecolor=' black ', rot=0) #add axis labels plt. xlabel (' Team ') plt. ylabel (' Frequency ')
Beachten Sie, dass das Argument „edgecolor“ einen schwarzen Rand um jeden Balken hinzugefügt hat und das Argument „ rot“ die X-Achsenbeschriftungen um 90 Grad gedreht hat, um sie leichter lesbar zu machen.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:
Pandas: So erstellen Sie ein gestapeltes Balkendiagramm
Pandas: So kommentieren Sie Balken in einem Balkendiagramm
Pandas: So zeichnen Sie mehrere Spalten in einem Balkendiagramm ein