Matplotlib: كيفية تلوين مخطط التشتت حسب القيمة


في كثير من الأحيان قد ترغب في تظليل لون النقاط في مخطط scatterplot matplotlib بناءً على متغير ثالث. لحسن الحظ، من السهل القيام بذلك باستخدام الدالة matplotlib.pyplot.scatter() ، والتي تأخذ الصيغة التالية:

matplotlib.pyplot.scatter(x, y, s=None, c=None, cmap=None)

ذهب:

  • x: جدول القيم المطلوب استخدامه لمواضع المحور x في المخطط.
  • y: مجموعة من القيم لاستخدامها في مواضع المحور y في المخطط.
  • s: حجم العلامة.
  • ج: جدول القيم المستخدمة لألوان العلامة.
  • cmap: خريطة ملونة لاستخدامها في التخطيط.

يمكنك استخدام c لتحديد متغير لاستخدامه لقيم الألوان ويمكنك استخدام cmap لتحديد الألوان الفعلية لاستخدامها للعلامات في السحابة النقطية.

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

مثال 1: نقاط مخطط التشتت الملونة حسب القيمة

لنفترض أن لدينا DataFrame الباندا التالية:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'x': [25, 12, 15, 14, 19, 23, 25, 29],
                   'y': [5, 7, 7, 9, 12, 9, 9, 4],
                   'z': [3, 4, 4, 5, 7, 8, 8, 9]})

#view DataFrame
df

        X Y Z
0 25 5 3
1 12 7 4
2 15 7 4
3 14 9 5
4 19 12 7
5 23 9 8
6 25 9 8
7 29 4 9

يوضح الكود التالي كيفية إنشاء سحابة نقطية باستخدام لوحة الألوان الرمادية واستخدام قيم المتغير z كظل للوحة الألوان:

 import matplotlib.pyplot as plt

#create scatterplot
plt. scatter (df.x, df.y, s=200, c=df.z, cmap=' gray ')

Matplotlib مبعثر لون الرسم حسب القيمة

في هذا المثال تحديدًا، نختار لوحة الألوان “الرمادية”، ولكن يمكنك العثور على قائمة كاملة بألواح الألوان المتاحة لاستخدامها في وثائق لوحات ألوان matplotlib .

على سبيل المثال، يمكننا بدلاً من ذلك تحديد “الأخضر” كلوحة ألوان:

 plt. scatter (df.x, df.y, s=200, c=df.z, cmap=' Greens ') 

مخطط مبعثر Matplotlib باستخدام cmap

بشكل افتراضي، تكون العلامات ذات القيم الأكبر للوسيطة c مظللة بشكل أغمق، ولكن يمكنك عكس هذا الاتجاه ببساطة عن طريق إضافة _r إلى اسم cmap:

 plt. scatter (df.x, df.y, s=200, c=df.z, cmap=' Greens_r ') 

لوحة ألوان Matplotlib بمقياس مقلوب

مثال 2: نقاط مخطط التشتت الملونة حسب الفئة

لنفترض أن لدينا DataFrame الباندا التالية:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'x': [25, 12, 15, 14, 19, 23, 25, 29],
                   'y': [5, 7, 7, 9, 12, 9, 9, 4],
                   'z': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'C']})

#view DataFrame
df

	X Y Z
0 25 5 A
1 12 7 A
2 15 7 B
3 14 9 B
4 19 12 B
5 23 9 C
6 25 9 C
7 29 4 C

يوضح التعليمة البرمجية التالية كيفية إنشاء مخطط تبعثر باستخدام المتغير z لتلوين العلامات بناءً على الفئة:

 import matplotlib.pyplot as plt

groups = df. groupby ('z')
for name, group in groups:
    plt. plot (group.x, group.y, marker=' o ', linestyle='', markersize=12, label=name)

plt. legend ()

مخطط مبعثر Matplotlib ملون حسب الفئة

يمكنك العثور على المزيد من دروس بايثون هنا .

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *