كيفية إضافة خط الاتجاه في matplotlib (مع مثال)


يمكنك استخدام بناء الجملة الأساسي التالي لإضافة خط اتجاه إلى قطعة أرض في Matplotlib:

 #create scatterplot
plt. scatter (x,y)

#calculate equation for trendline
z = np. polyfit (x, y, 1)
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x))

توضح الأمثلة التالية كيفية استخدام بناء الجملة هذا عمليًا.

مثال 1: إنشاء خط اتجاه خطي في Matplotlib

يوضح التعليمة البرمجية التالية كيفية إنشاء خط اتجاه أساسي لمخطط التشتت في Matplotlib:

 import numpy as np
import matplotlib. pyplot as plt

#define data
x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40])
y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37])

#create scatterplot
plt. scatter (x,y)

#calculate equation for trendline
z = np. polyfit (x, y, 1 )
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x)) 

تمثل النقاط الزرقاء نقاط البيانات ويمثل الخط الأزرق المستقيم خط الاتجاه الخطي.

لاحظ أنه يمكنك أيضًا استخدام وسيطات color و linewidth و linestyle لتغيير مظهر خط الاتجاه:

 #add custom trendline to plot
plt. plot (x, p(x), color=" purple ", linewidth= 3 , linestyle=" -- ")

المثال 2: إنشاء خط اتجاه متعدد الحدود في Matplotlib

لإنشاء خط اتجاه متعدد الحدود، ما عليك سوى تغيير القيمة في الدالة np.polyfit() .

على سبيل المثال، يمكننا استخدام القيمة 2 لإنشاء خط اتجاه تربيعي:

 import numpy as np
import matplotlib. pyplot as plt

#define data
x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40])
y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37])

#create scatterplot
plt. scatter (x,y)

#calculate equation for quadratic trendline
z = np. polyfit (x,y, 2 )
p = np. poly1d (z)

#add trendline to plot
plt. plot (x, p(x)) 

لاحظ أن خط الاتجاه أصبح الآن منحنيًا بدلاً من أن يكون مستقيمًا.

يعد خط الاتجاه متعدد الحدود هذا مفيدًا بشكل خاص عندما تحتوي بياناتك على نمط غير خطي ويفشل الخط المستقيم في التقاط اتجاه البيانات بشكل مناسب.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ وظائف شائعة أخرى في Matplotlib:

كيفية إخفاء المحاور في Matplotlib
كيفية تدوير تسميات علامة الاختيار في Matplotlib
كيفية تغيير عدد القراد في Matplotlib

Add a Comment

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