برنامج Python Seaborn التعليمي: ما هو Seaborn وكيفية استخدامه؟

دروس Python Seaborn على طول الفرق بين seaborn و matplotlib. تعرف أيضًا على الوظائف المختلفة والتخصيصات المتاحة في البحر.

Python عبارة عن مخزن يضم العديد من المكتبات والأطر القوية للغاية. من بينها هو سيبورن ، وهو المهيمن عرض مرئي للمعلومات مكتبة ، مما يمنح سببًا آخر لإكمال المبرمجين . في هذا البرنامج التعليمي لـ Python Seaborn ، سوف تعتمد على كل براعة تصور البيانات باستخدام Seaborn.

قبل الانتقال ، دعنا نلقي نظرة على جميع مواضيع المناقشة في هذه المقالة:





لذلك دعونا نبدأ أولاً من خلال توضيح أهمية Python Seaborn.

لماذا تستخدم Python Seaborn؟

كما ذكرنا سابقًا ، تُستخدم مكتبة Python Seaborn لتسهيل المهمة الصعبة لتصور البيانات وهي تعتمد على . يسمح Seaborn بإنشاء رسومات إحصائية من خلال الوظائف التالية:



  • واجهة برمجة تطبيقات تعتمد على مجموعات بيانات تتيح المقارنة بين ملفات المتغيرات

  • يدعم الشبكات متعددة القطع التي بدورها تسهل بناء التصورات المعقدة

  • التصورات أحادية المتغير وثنائية المتغير متاحة للمقارنة بين مجموعات فرعية من البيانات



  • توافر لوحات ألوان مختلفة للكشف عن أنواع مختلفة من الأنماط

  • التقديرات والمؤامرات تلقائيا

لذا ، إذا كنت تتساءل عن سبب استخدام Seaborn عندما يكون لديك بالفعل Matplotlib ، فإليك الإجابة عليه.

بيثون سيبورن مقابل ماتبلوتليب:

'إذا حاول Matplotlib' جعل الأشياء السهلة سهلة والأشياء الصعبة ممكنة '، يحاول seaborn أن يجعل مجموعة محددة جيدًا من الأشياء الصعبة سهلة أيضًا' - Michael Waskom (مبتكر Seaborn).
في الواقع ، Matplotlib جيد ولكن Seaborn أفضل. هناك نوعان من أوجه القصور في Matplotlib التي يصلحها Seaborn:

  1. يمكن تخصيص Matplotlib ولكن من الصعب معرفة الإعدادات المطلوبة لجعل المؤامرات أكثر جاذبية. من ناحية أخرى ، يأتي Seaborn مع العديد من السمات المخصصة والواجهات عالية المستوى لحل هذه المشكلة.

  2. عند العمل مع الباندا ، فإن Matplotlib لا تعمل بشكل جيد عندما يتعلق الأمر بالتعامل مع DataFrames ، بينما تعمل وظائف Seaborn بالفعل على DataFrames.

كيفية تثبيت Seaborn؟

لتثبيت مكتبة Python Seaborn ، يمكنك استخدام الأوامر التالية بناءً على النظام الأساسي الذي تستخدمه:

نقطة تثبيت seaborn

أو

كوندا تثبيت seaborn

بمجرد تثبيت هذا ، فقط تأكد من تثبيت الحزم والمكتبات التي يعتمد عليها seaborn.

تثبيت تبعيات Python Seaborn:

التبعيات الإلزامية للبحر هي:

هناك تبعية واحدة موصى بها وهي:

  • نماذج الدولة

لتثبيت هذه المكتبات ، يمكنك استخدام نفس الأوامر كما هو موضح سابقًا لـ Seaborn بأسمائها الخاصة. بمجرد التثبيت ، يمكن استيرادها بسهولة. يسمح لك Seaborn بتحميل أي مجموعة بيانات من باستخدام load_dataset () وظيفة. يمكنك أيضًا عرض جميع مجموعات البيانات المتاحة باستخدام وظيفة get_dataset_names () على النحو التالي:

مثال:

استيراد seaborn كـ sns sns.get_dataset_names ()

سيؤدي هذا إلى إرجاع قائمة بجميع مجموعات البيانات المتاحة.
الآن بعد أن أعددت بيئتك للعمل مع seaborn ، دعنا ننتقل إلى أبعد من ذلك لنرى كيفية استخدام وظائف التخطيط في .

وظائف التآمر Seaborn

تصور العلاقات الإحصائية:

تُعرف عملية فهم العلاقات بين متغيرات مجموعة البيانات وكيف تعتمد هذه العلاقات بدورها على متغيرات أخرى باسم التحليل الإحصائي. دعنا الآن نلقي نظرة أعمق على الوظائف اللازمة لهذا:

relplot ():

هذه دالة على مستوى الشكل تستفيد من وظيفتين محورين آخرين لتصور العلاقات الإحصائية وهما:

  • مبعثر ()
  • مؤامرة خط()

يمكن تحديد هذه الوظائف باستخدام معلمة 'النوع' الخاصة بـ relplot (). في حالة إعطاء هذه المعلمة ، فإنها تأخذ المعامل الافتراضي وهو scatterplot (). قبل أن تبدأ في كتابة التعليمات البرمجية الخاصة بك ، تأكد من استيراد المكتبات المطلوبة على النحو التالي:

استيراد numpy كـ np استيراد الباندا كـ pd import matplotlib.pyplot كـ plt import seaborn as sns sns.set (style = 'darkgrid')

يرجى ملاحظة أن سمة النمط قابلة للتخصيص أيضًا ويمكن أن تأخذ أي قيمة مثل darkgrid والعلامات وما إلى ذلك والتي سأناقشها لاحقًا في قسم جماليات الرسم. دعنا الآن نلقي نظرة على مثال صغير:

مثال:

f = sns.load_dataset ('flight') sns.relplot (x = 'الركاب' ، y = 'month' ، data = f)

انتاج:

ما هو الربط السائب في جافا

Flight1- بايثون سيبورن تعليمي- Edureka

كما ترى ، يتم رسم النقاط في بعدين. ومع ذلك ، يمكنك إضافة بُعد آخر باستخدام دلالة 'hue'. دعونا نلقي نظرة على مثال على ذلك:

مثال:

f = sns.load_dataset ('flight') sns.relplot (x = 'الركاب' ، y = 'month' ، hue = 'year' ، data = f)

سترى الناتج التالي:

انتاج:

ومع ذلك ، هناك العديد من التخصيصات التي يمكنك تجربتها مثل الألوان والأنماط والحجم وما إلى ذلك. دعني أوضح فقط كيف يمكنك تغيير اللون في المثال التالي:

مثال:

sns.set (style = 'darkgrid') f = sns.load_dataset ('flight') sns.relplot (x = 'الركاب' ، y = 'month' ، hue = 'year' ، اللوحة = 'ch: r = - .5 ، l = .75 '، البيانات = f)

انتاج:

مؤامرة خط():

ستتيح لك هذه الوظيفة رسم خط مستمر لبياناتك. يمكنك استخدام هذه الوظيفة عن طريق تغيير معلمة 'النوع' على النحو التالي:

مثال:

a = pd.DataFrame ({'Day': [1،2،3،4،5،6،7]، 'Grocery': [30،80،45،23،51،46،76]، 'Clothes' : [13،40،34،23،54،67،98]، 'أواني': [12،32،27،56،87،54،34]} ، الفهرس = [1،2،3،4،5 ، 6،7]) g = sns.relplot (x = 'Day'، y = 'Clothes'، kind = 'line'، data = a) g.fig.autofmt_xdate ()

انتاج:

الافتراضي ل lineplot هو y كدالة في x. ومع ذلك ، يمكن تغييره إذا كنت ترغب في القيام بذلك. هناك العديد من الخيارات التي يمكنك تجربتها بشكل أكبر.

دعنا الآن نلقي نظرة على كيفية رسم البيانات الفئوية.

التآمر مع البيانات الفئوية:

يأتي هذا النهج في الصورة عندما ينقسم متغيرنا الرئيسي إلى مجموعات منفصلة (فئوية). يمكن تحقيق ذلك باستخدام وظيفة catplot ().

catplot ():

هذه دالة على مستوى الشكل مثل relplot (). يمكن أن تتميز بثلاث عائلات من وظائف مستوى المحاور وهي:

  1. المخططات المبعثرة - وتشمل ستريبلوت () ، سوارمبلوت ()

  2. مخططات التوزيع - وهي boxplot () و violinplot () و boxenplot ()

  3. Estimateplots - وهي pointplot () ، barplot () ، كونتبلوت ()

دعنا الآن نأخذ بعض الأمثلة لتوضيح ذلك:

مثال:

استيراد seaborn as sns import matplotlib.pyplot كـ plt sns.set (style = 'ticks'، color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day'، y = 'total_bill'، البيانات = أ)

انتاج:

كما ترى ، في المثال أعلاه لم أقم بتعيين معلمة 'النوع'. لذلك أعاد الرسم البياني باعتباره مخطط التشتت الافتراضي. يمكنك تحديد أي من وظائف مستوى المحاور لتغيير الرسم البياني حسب الحاجة. لنأخذ مثالاً على ذلك أيضًا:

مثال:

استيراد seaborn as sns import matplotlib.pyplot كـ plt sns.set (style = 'ticks'، color_codes = True) a = sns.load_dataset ('tips') sns.catplot (x = 'day'، y = 'total_bill'، النوع = 'الكمان' ، البيانات = أ)

انتاج:

يُظهر الإخراج أعلاه مخطط الكمان لمجموعة بيانات النصائح. الآن دعونا نحاول معرفة كيفية تصور توزيع مجموعة البيانات.

تصور توزيع مجموعة البيانات:

يتعامل هذا بشكل أساسي مع فهم مجموعات البيانات مع السياق لكونه أحادي المتغير أو ثنائي المتغير. قبل البدء بهذا ، ما عليك سوى استيراد ما يلي:

استيراد numpy كـ np استيراد الباندا كـ pd استيراد seaborn as sns import matplotlib.pyplot as plt من scipy import stats sns.set (color_codes = True)

بمجرد الانتهاء من ذلك ، يمكنك الاستمرار في التخطيط للتوزيعات أحادية المتغير وثنائية المتغير.

رسم التوزيعات أحادية المتغير:

لرسمها ، يمكنك الاستفادة من وظيفة distplot () على النحو التالي:

مثال:

أ = np.random.normal (loc = 5 ، الحجم = 100 ، المقياس = 2) sns.distplot (a)

انتاج:

كما ترى في المثال أعلاه ، قمنا برسم رسم بياني للمتغير a الذي يتم إنشاء قيمه بواسطة الوظيفة العادية () باستخدام distplot.

رسم التوزيعات ثنائية المتغير:

يظهر هذا في الصورة عندما يكون لديك متغيرين مستقلين عشوائيين يؤديان إلى بعض الأحداث المحتملة. أفضل وظيفة لرسم هذا النوع من الرسوم البيانية هي Jointplot (). دعونا الآن نرسم رسمًا بيانيًا ثنائي المتغير باستخدام مخطط مشترك ().

مثال:

x = pd.DataFrame ({'Day': [1،2،3،4،5،6،7]، 'Grocery': [30،80،45،23،51،46،76]، 'Clothes' : [13،40،34،23،54،67،98]، 'أواني': [12،32،27،56،87،54،34]} ، الفهرس = [1،2،3،4،5 ، 6،7]) y = pd.DataFrame ({'Day': [8،9،10،11،12،13،14]، 'Grocery': [30،80،45،23،51،46، 76] ، 'الملابس': [13،40،34،23،54،67،98] ، 'الأواني': [12،32،27،56،87،54،34]} ، الفهرس = [8،9 ، 10، 11، 12، 13، 14]) يعني ، cov = [0، 1]، [(1، .5)، (.5، 1)] data = np.random.multivariate_normal (mean، cov، 200 ) مع sns.axes_style ('أبيض'): sns.jointplot (x = x، y = y، kind = 'kde'، color = 'b')

انتاج:

الآن بعد أن فهمت الوظائف المختلفة في Python Seaborn ، دعنا ننتقل إلى بناء شبكات منظمة متعددة القطع.

شبكات متعددة القطع:

يتيح لك Python Seaborn رسم شبكات متعددة جنبًا إلى جنب. هذه في الأساس مؤامرات أو رسوم بيانية يتم رسمها باستخدام نفس المقياس والمحاور للمساعدة في المقارنة بينهما. وهذا بدوره يساعد المبرمج على التفريق بسرعة بين المؤامرات والحصول على كميات كبيرة من المعلومات.

ضع في اعتبارك المثال التالي لوظيفة facetgrid () لرسم هذه الرسوم البيانية.

مثال:

sns.set (style = 'darkgrid') a = sns.load_dataset ('iris') b = sns.FacetGrid (a، col = 'types') b.map (plt.hist، 'sepal_length')

انتاج:

يوضح الناتج أعلاه بوضوح المقارنة بين النصائح التي يتم تقديمها أثناء الغداء والعشاء. يمكنك أيضًا التخطيط باستخدام وظيفة PairGrid عندما يكون لديك زوج من المتغيرات للمقارنة. تأمل المثال التالي.

مثال:

sns.set (style = 'ticks') a = sns.load_dataset ('flight') b = sns.PairGrid (a) b.map (plt.scatter)

انتاج:

كما ترى ، الناتج أعلاه يقارن بوضوح بين العام وعدد الركاب بطرق مختلفة.

يسمح Seaborn أيضًا بالتخصيصات المتعلقة بالجماليات التي تتم مناقشتها بشكل أكبر.

جماليات المؤامرة:

يتعامل هذا الجزء من برنامج Python Seaborn التعليمي مع جعل قطع الأراضي لدينا أكثر جاذبية وإمتاعًا.

جماليات الشكل بيثون سيبورن:

الوظيفة الأولى التي سأناقشها هي تعيين (). لقد كنت أستخدم معلمة 'النمط' لهذه الوظيفة من قبل. تتعامل هذه المعلمة بشكل أساسي مع الموضوعات البحرية. في الوقت الحاضر ، هناك خمسة منها متاحة وهي الشبكة المظلمة والقراد والأبيض والأبيض والداكن.

خذ بعين الاعتبار المثال التالي الذي يوضح السمة البيضاء.

مثال:

استيراد seaborn as sns import matplotlib.pyplot كـ plt sns.set (style = 'white'، color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day'، y = 'total_bill'، البيانات = أ)

انتاج:

في الإخراج أعلاه ، يمكنك ملاحظة تغيير السمة إلى اللون الأبيض. يمكنك استكشافها بشكل أكبر باستخدام السمات الأخرى أيضًا. إذا لاحظت في الإخراج السابق ، فهناك محاور موجودة في جميع أنحاء الرسم البياني. ومع ذلك ، يمكن تخصيص هذا أيضًا باستخدام وظيفة despine (). انظر للمثال ادناه.

مثال:

استيراد seaborn as sns import matplotlib.pyplot كـ plt sns.set (style = 'white'، color_codes = True) a = sns.load_dataset ('tips') sns.boxplot (x = 'day'، y = 'total_bill'، البيانات = أ) sns.despine (الإزاحة = 10 ، تقليم = صحيح)

انتاج:



لاحظ الفرق بين المخرجات السابقة. ومع ذلك ، هناك العديد من الخيارات التي يمكنك استكشافها بنفسك.

لوحات ألوان Python Seaborn:

اللون هو في الأساس الميزة التي تقترب من عيون الإنسان بشكل يتجاوز أي ميزة أخرى. يتيح لك Seaborn اللعب بالألوان باستخدام وظائف مختلفة مثل color_palette () و hls_palette () و husl_palette () وما إلى ذلك. ألقِ نظرة على الألوان الموجودة حاليًا داخل seaborn.

مثال:

استيراد numpy مثل np import seaborn كما sns import matplotlib.pyplot as plt sns.set () presentcolors = sns.color_palette () sns.palplot (Presentcolors)

انتاج:

توضح الصورة أعلاه الألوان الموجودة داخل البحر. لقد قمت بذلك باستخدام وظيفة palplot (). للحصول على أشكال أعمق ، يمكنك استخدام hls_palette () و husl_palette () وما إلى ذلك.

هذا يقودنا إلى نهاية برنامج Python Seaborn التعليمي. أتمنى أن تكون قد فهمت كل شيء بوضوح. تأكد من ممارسة أكبر قدر ممكن .

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في مدونة 'Python Seaborn Tutorial' وسنعاود الاتصال بك في أقرب وقت ممكن.

للحصول على معرفة متعمقة حول Python مع تطبيقاتها المختلفة ، يمكنك التسجيل في البث المباشر مع دعم على مدار الساعة طوال أيام الأسبوع وإمكانية الوصول مدى الحياة.