Seaborn barplot'ta barların sırası nasıl değiştirilir?
Deniz arsasındaki çubukların sırasını değiştirmek için aşağıdaki yöntemleri kullanabilirsiniz:
Yöntem 1: Ham verilerden oluşturulan Barplot’taki çubukları sıralama
sns. barplot (x=' xvar ', y=' yvar ', data=df, order=df. sort_values (' yvar '). xvar )
Yöntem 2: Barplot’ta toplanmış verilerden oluşturulan çubukları sıralama
sns. barplot (x=' xvar ', y=' yvar ', data=df, order=df_agg[' xvar ']
Aşağıdaki örnekler her yöntemin pratikte nasıl kullanılacağını göstermektedir.
Örnek 1: Ham verilerden oluşturulan Barplot’taki çubukları sıralama
Bir şirketin çeşitli çalışanları tarafından yapılan toplam satışlarla ilgili bilgileri içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:
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
Çubukların satış değerine göre artan düzende sıralandığı bir bar grafiği oluşturmak için aşağıdaki sözdizimini kullanabiliriz:
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 )
Çubukları azalan düzende sıralamak için sort_values() işlevinde artan=False komutunu kullanmanız yeterlidir:
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 )
Örnek 2: Barplot’ta birleştirilmiş verilerden oluşturulan çubukları sıralama
Bir şirketin çeşitli çalışanları tarafından yapılan toplam satışlarla ilgili bilgileri içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:
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
Çalışana göre gruplandırılmış ortalama satış değerini hesaplamak için aşağıdaki sözdizimini kullanabiliriz:
#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
Daha sonra Seaborn’da çalışan başına ortalama satışları çubukların artan sırada görüntülendiği bir bar grafiği oluşturmak için aşağıdaki sözdizimini kullanabiliriz:
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 ))
X ekseni çalışanın adını, Y ekseni ise her çalışanın ortalama satış değerini görüntüler.
Ek kaynaklar
Aşağıdaki eğitimler, deniz doğuşunda diğer ortak işlevlerin nasıl gerçekleştirileceğini açıklamaktadır:
Seaborn Barplot’ta değerler nasıl görüntülenir?
Seaborn’da gruplandırılmış bir bar grafiği nasıl oluşturulur?
Seaborn bar grafiğinde çubukların rengi nasıl ayarlanır?