So ändern sie die reihenfolge der balken in seaborn barplot


Mit den folgenden Methoden können Sie die Reihenfolge der Balken in einem Meeresdiagramm ändern:

Methode 1: Sortieren Sie Balken im Barplot, die aus Rohdaten erstellt wurden

 sns. barplot (x=' xvar ', y=' yvar ', data=df, order=df. sort_values (' yvar '). xvar )

Methode 2: Sortieren Sie Balken im Barplot, die aus aggregierten Daten erstellt wurden

 sns. barplot (x=' xvar ', y=' yvar ', data=df, order=df_agg[' xvar ']

Die folgenden Beispiele zeigen, wie die einzelnen Methoden in der Praxis angewendet werden.

Beispiel 1: Sortierbalken in Barplot, erstellt aus Rohdaten

Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über den Gesamtumsatz verschiedener Mitarbeiter eines Unternehmens enthält:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' employee ': ['Andy', 'Bert', 'Chad', 'Doug', 'Eric', 'Frank'],
                   ' sales ': [22, 14, 9, 7, 29, 20]})

#view DataFrame
print (df)

  employee sales
0 Andy 22
1 Bert 14
2 Chad 9
3 Doug 7
4 Eric 29
5 Frank 20

Mit der folgenden Syntax können wir ein Balkendiagramm erstellen, in dem die Balken aufsteigend nach dem Verkaufswert sortiert sind:

 import seaborn as sns

#create barplot with bars sorted by sales values ascending
sns. barplot (x=' employee ', y=' sales ', data=df, order=df. sort_values (' sales '). employee )

Um die Balken in absteigender Reihenfolge zu sortieren, verwenden Sie einfach aufsteigend=False in der Funktion sort_values() :

 import seaborn as sns

#create barplot with bars sorted by sales values descending
sns. barplot (x=' employee ', y=' sales ', data=df,
            order=df. sort_values (' sales ', ascending= False ). employee ) 

Beispiel 2: Sortierbalken in Barplot, erstellt aus aggregierten Daten

Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über den Gesamtumsatz verschiedener Mitarbeiter eines Unternehmens enthält:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' employee ': ['A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
                   ' sales ': [24, 20, 25, 14, 19, 13, 30, 35, 28]})

#view DataFrame
print (df)

  employee sales
0 to 24
1 to 20
2 to 25
3 B 14
4 B 19
5 B 13
6 C 30
7 C 35
8 C 28

Wir können die folgende Syntax verwenden, um den durchschnittlichen Verkaufswert , gruppiert nach Mitarbeiter, zu berechnen:

 #calculate mean sales by employee
df_agg = df. groupby ([' employee '])[' sales ']. mean (). reset_index (). sort_values (' sales ')

#view aggregated data
print (df_agg)

  employee sales
1 B 15.333333
0 to 23.000000
2 C 31.000000

Anschließend können wir die folgende Syntax verwenden, um in Seaborn ein Balkendiagramm zu erstellen, das den durchschnittlichen Umsatz pro Mitarbeiter anzeigt, wobei die Balken in aufsteigender Reihenfolge angezeigt werden:

 import seaborn as sns

#create barplot with bars ordered in ascending order by mean sales
sns. barplot (x=' employee ', y=' sales ', data=df,
            order=df_agg[' employee '], errorbar=(' ci ', False )) 

Auf der X-Achse wird der Name des Mitarbeiters angezeigt und auf der Y-Achse der durchschnittliche Umsatzwert für jeden Mitarbeiter.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere allgemeine Funktionen in Seaborn ausführen:

So zeigen Sie Werte im Seaborn Barplot an
So erstellen Sie ein gruppiertes Barplot in Seaborn
So legen Sie die Farbe von Balken in einem Seaborn-Balkendiagramm fest

Einen Kommentar hinzufügen

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