"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية إنشاء مخطط مبعثر بألوان مختلفة للمستويات الفئوية في Matplotlib، وSeaborn، وPandas؟

كيفية إنشاء مخطط مبعثر بألوان مختلفة للمستويات الفئوية في Matplotlib، وSeaborn، وPandas؟

تم النشر بتاريخ 2024-11-04
تصفح:547

How to Create a Scatter Plot with Different Colors for Categorical Levels in Matplotlib, Seaborn, and Pandas?

مخطط مبعثر بألوان مختلفة للمستويات الفئوية

استخدام Matplotlib

لإنشاء مخطط مبعثر حيث يتم تمثيل المستويات الفئوية المختلفة بألوان مختلفة باستخدام Matplotlib ، اتبع الخطوات التالية:

  1. قم باستيراد Matplotlib وإطار البيانات الذي تريد مؤامرة.
  2. حدد قاموسًا يعين المستويات الفئوية لرسم الألوان.
  3. استخدم plt.scatter، وتمرير قيم x وy والوسيطة c لتحديد الألوان.
import matplotlib.pyplot as plt
import pandas as pd

colors = {'D':'tab:blue', 'E':'tab:orange', 'F':'tab:green', 'G':'tab:red', 'H':'tab:purple', 'I':'tab:brown', 'J':'tab:pink'}

df.scatter(df['carat'], df['price'], c=df['color'].map(colors))

plt.show()

استخدام Seaborn

Seaborn عبارة عن غلاف حول Matplotlib يوفر واجهة أكثر سهولة في الاستخدام. لإنشاء مخطط مبعثر بألوان مختلفة للمستويات الفئوية باستخدام Seaborn، اتبع الخطوات التالية:

    قم باستيراد Seaborn وإطار البيانات الذي تريد رسمه.
  1. استخدم seaborn.scatterplot، مرورًا في قيم x وy ومعلمة hue لتحديد المستوى الفئوي.
import seaborn as sns

sns.scatterplot(x='carat', y='price', data=df, hue='color')

plt.show()
استخدام pandas.groupby & pandas.DataFrame.plot

يمكنك أيضًا استخدام pandas.groupby وpandas.DataFrame.plot لإنشاء مخطط مبعثر بألوان مختلفة للفئات المستويات. تتطلب هذه الطريقة المزيد من العمل اليدوي، ولكنها تمنحك مزيدًا من التحكم في مظهر قطعة الأرض.

    قم باستيراد حيوانات الباندا وإطار البيانات الذي تريد رسمه.
  1. قم بتجميع إطار البيانات حسب المستوى القاطع.
  2. كرر على المجموعات ورسم كل واحدة بلون مختلف.
استيراد الباندا كـ pd

الشكل، الفأس = plt.subplots(figsize=(6, 6))

مجمعة = df.groupby('اللون')
للمفتاح، المجموعة في مجمعة:
    group.plot(ax=ax, kind='scatter', x='carat', y='price', label=key, color=colors[key])

plt.show()
بيان الافراج أعيد طبع هذه المقالة على: 1729153817 في حالة وجود أي انتهاك، يرجى الاتصال بـ [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3