كيفية إنشاء وسيلة إيضاح يدوية في matplotlib (مع مثال)
يمكنك استخدام وظائف الوحدات الفرعية matplotlib.lines و matplotlib.patches لإنشاء وسيلة إيضاح يدوية في مخطط matplotlib.
يوضح المثال التالي كيفية القيام بذلك.
مثال: إنشاء وسيلة إيضاح يدوية في Matplotlib
يوضح التعليمة البرمجية التالية كيفية إنشاء مخطط مبعثر في matplotlib باستخدام وسيلة إيضاح افتراضية:
import matplotlib. pyplot as plt
#define data to plot
x = [1, 2, 3, 4, 5, 6, 7]
y = [2, 3, 5, 8, 12, 18, 27]
#create scatter plot of x vs. y
plt. scatter (x, y, label=' Original Data ', color=' steelblue ')
#add legend
plt. legend ()
#displayplot
plt. show ()
لإنشاء وسيلة إيضاح يدوية بخطوط ومربعات مخصصة، نحتاج إلى استيراد الوحدات الفرعية matplotlib.lines و matplotlib.patches .
يوضح التعليمة البرمجية التالية كيفية استخدام هذه الوحدات الفرعية لإنشاء وسيلة إيضاح يدوية:
import matplotlib. pyplot as plt
from matplotlib. lines import Line2D
import matplotlib. patches as mpatches
#define data to plot
x = [1, 2, 3, 4, 5, 6, 7]
y = [2, 3, 5, 8, 12, 18, 27]
#create scatter plot of x vs. y
plt. scatter (x, y, label=' Original Data ', color=' steelblue ')
#define handles and labels that will get added to legend
handles, labels = plt. gca (). get_legend_handles_labels ()
#define patches and lines to add to legend
patch1 = mpatches. Patch (color=' orange ', label=' First Manual Patch ')
patch2 = mpatches. Patch (color=' orange ', label=' First Manual Patch ')
line1 = Line2D([0], [0], label=' First Manual Line ', color=' purple ')
line2 = Line2D([0], [0], label=' Second Manual Line ', color=' red ')
#add handles
handles. extend ([patch1, line1, line2])
#add legend
plt. legend (handles=handles)
#displayplot
plt. show ()
لاحظ أن وسيلة الإيضاح هذه تتضمن تسمية البيانات الأصلية، ولكنها تتضمن أيضًا تسميات وأشكال العناصر التي أضفناها يدويًا.
لتغيير التسميات أو الألوان لأي من العناصر، ما عليك سوى تغيير قيم التسمية ووسائط اللون في الجزء السابق من التعليمات البرمجية.
ملحوظة : ارجع إلى هذا البرنامج التعليمي لمعرفة كيفية تغيير موضع وسيلة الإيضاح في المخطط.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في Matplotlib:
كيفية زيادة حجم قطعة الأرض في Matplotlib
كيفية ضبط موضع العنوان في Matplotlib
كيفية تعيين نطاقات المحور في Matplotlib