Seaborn: كيفية عرض القيمة المتوسطة على boxplot
يمكنك استخدام وسيطة showmeans لعرض القيمة المتوسطة في boxplots التي تم إنشاؤها باستخدام seaborn:
sns. boxplot (data=df, x=' x_var ', y=' y_var ', showmeans= True )
يوضح المثال التالي كيفية استخدام بناء الجملة هذا عمليًا.
مثال: عرض القيمة المتوسطة في Seaborn Boxplot
لنفترض أن لدينا DataFrame الباندا التالي الذي يوضح النقاط التي سجلها لاعبو كرة السلة من ثلاثة فرق مختلفة:
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
يمكننا استخدام الكود التالي لإنشاء boxplots لتصور توزيع النقاط لكل فريق:
import seaborn as sns
#create boxplot to visualize distribution points by team
sns. boxplot (data=df, x=' team ', y=' points ')
بشكل افتراضي، تعرض boxplots القيمة المتوسطة باستخدام خط أفقي داخل كل boxplot.
لعرض القيمة المتوسطة لكل boxplot، يجب عليك تحديد showmeans=True :
import seaborn as sns
#create boxplot to visualize points distribution by team (and display mean values)
sns. boxplot (data=df, x=' team ', y=' points ', showmeans= True )
بشكل افتراضي، يستخدم seaborn مثلثات خضراء لعرض متوسط قيمة كل boxplot.
لتخصيص مظهر القيمة المتوسطة، لا تتردد في استخدام وسيطة Meanprops :
import seaborn as sns
#create boxplot to visualize distribution points by team
sns. boxplot (data=df, x=' team ', y=' points ', showmeans= True ,
meanprops={' marker ':' o ',
' markerfacecolor ': ' white ',
' markeredgecolor ': ' black ',
' markersize ': ' 8 '})
يتم الآن عرض القيم المتوسطة كدوائر بيضاء ذات مخطط أسود.
لا تتردد في اللعب بقيم وسيطة Meanprops لتغيير مظهر القيم المتوسطة في boxplots.
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة seaborn boxplot() هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية أداء الوظائف الشائعة الأخرى في Seaborn:
كيفية التحكم في الألوان في Seaborn Boxplot
كيفية إزالة القيم المتطرفة من Seaborn boxplot
كيفية ترتيب boxplots على المحور السيني في Seaborn