Jak zamówić wykresy pudełkowe na osi x w seaborn
Aby zmienić kolejność wykresów skrzynkowych wzdłuż osi x w Seaborn, możesz użyć następujących metod:
Metoda 1: Sortuj wykresy pudełkowe w kolejności niestandardowej
sns. boxplot (x=' group_var ', y=' values_var ', data=df, order=[' A ',' B ',' C '])
Metoda 2: Sortowanie wykresów pudełkowych za pomocą metryki
group_means=df. groupby ([' group_var '])[' values_var ']. mean (). sort_values (ascending= True ) sns. boxplot (x=' group_var ', y=' values_var ', data=df, order=group_means. index )
Poniższe przykłady pokazują, jak zastosować każdą metodę w praktyce z następującą ramką DataFrame pand, która pokazuje punkty zdobyte przez koszykarzy z trzech różnych drużyn:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C', 'C'], ' points ': [3, 4, 6, 8, 9, 10, 13, 16, 18, 20, 8, 9, 12, 13, 15]}) #view head of DataFrame print ( df.head ()) team points 0 to 3 1 to 4 2 to 6 3 to 8 4 to 9
Przykład 1: Zamów wykresy pudełkowe na zamówienie
Poniższy kod pokazuje, jak utworzyć wykres pudełkowy, aby zwizualizować rozkład punktów dla każdej drużyny i uszeregować wykresy pudełkowe w następującej kolejności na podstawie nazwy zespołu: C, A, B.
import seaborn as sns
#create boxplots with custom order
sns. boxplot (x=' team ', y=' points ', data=df, order=[' C ', ' A ', ' B '])
Należy zauważyć, że wykresy pudełkowe są uporządkowane wzdłuż osi x w dokładnie takiej kolejności, jaką określiliśmy.
Przykład 2: Porządkowanie wykresów pudełkowych za pomocą metryki
Poniższy kod pokazuje, jak utworzyć wykres skrzynkowy w celu wizualizacji rozkładu punktów dla każdej drużyny i uszeregowania wykresów pudełkowych w kolejności rosnącej na podstawie średniej punktów zdobytych przez drużynę:
import seaborn as sns
#calculate mean points by team
mean_by_team = df. groupby ([' team '])[' points ']. mean (). sort_values (ascending= True )
#create boxplots ordered by mean points (ascending)
sns. boxplot (x=' team ', y=' points ', data=df, order=mean_by_team. index )
Należy zauważyć, że wykresy pudełkowe są uporządkowane wzdłuż osi x na podstawie średniej wartości punktów na drużynę w kolejności rosnącej.
Aby wyświetlić wykresy pudełkowe w kolejności malejącej, po prostu określ rosnąco=False w funkcji sort_values() :
import seaborn as sns
#calculate mean points by team
mean_by_team = df. groupby ([' team '])[' points ']. mean (). sort_values (ascending= False )
#create boxplots ordered by mean points (descending)
sns. boxplot (x=' team ', y=' points ', data=df, order=mean_by_team. index )
Wykresy pudełkowe są teraz uporządkowane wzdłuż osi x na podstawie średniej wartości punktów na drużynę w kolejności malejącej.
Uwaga : Aby posortować wykresy pudełkowe na podstawie innej metryki (np. mediany), po prostu określ tę metrykę po funkcji groupby() w powyższym kodzie.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe funkcje w seaborn:
Jak usunąć wartości odstające z wykresu pudełkowego Seaborna
Jak utworzyć wielokolumnowy wykres pudełkowy w Seaborn