اذهب إلى المحتوى

السؤال

Recommended Posts

  • 1
نشر

يمكنك استخدام الدالة ()matplotlib.pyplot.axvline لإضافة خطوط عمودية لل plot الخاص بك:

matplotlib.pyplot.axvline(x=0, ymin=0, ymax=1, **kwargs)

حيث أن الوسيط الأول يستخدم لتحديد الإحداثي x الذي تريد رسم الخط العمودي عنده. أما الوسيط الثاني فيحدد موضع بدء الخط العمودي على المحور y، حيث يأخذ قيم بين 0 و 1، بحيث 0 يكون أسفل المحور ،  أما 1 يكون أعلى المحور. أما الوسيط الثالث، فيحدد موضع نهاية الخط العمودي على المحور y ، حيث يأخذ قيم بين 0 و 1، بحيث 0 يكون أسفل المحور ، و 1 يكون أعلى المحور. وأخيراً **kwargs تمثل وسطاء أخرى مثل عرض الخط linewidth واللون color. مثال:

import matplotlib.pyplot as plt
# تحديد بيانات 
x =[0, 3, 7, 12, 17]
y =[1, 4, 6, 7, 10]
# رسم البيانات
plt.plot(x, y)
# بحيث يبدأ من منتصف المحور العيني x = 3.2 رسم خط عمودي باللون الأحمر عند الإحداثي 
# وينتهي في نهاية المحور العيني 
plt.axvline(x = 3.2, ymin = 0.5, ymax = 1,
			color ='r')
plt.show()

الخرج:
index.png.9dafe172c58dc7bd9db7417223d6ba0d.png
كما يمكنك رسم عدة خطوط عمودية كالتالي:

import matplotlib.pyplot as plt
# تحديد بيانات 
x =[0, 3, 7, 12, 17]
y =[1, 4, 6, 7, 10]
# رسم البيانات
plt.plot(x, y)
# بحيث يبدأ من منتصف المحور العيني x = 3.2 رسم خط عمودي باللون الأحمر عند الإحداثي 
# وينتهي في نهاية المحور العيني 
plt.axvline(x = 3.2, ymin = 0.5, ymax = 1,
			color ='r')
# خط آخر مع تغيير بعض القيم
plt.axvline(x = 4.0, ymin = 0.3, ymax = 0.7,
			color ='black')
# خط آخر
plt.axvline(x = 5.0, ymin = 0.1, ymax = 0.9,
			color ='y')
plt.show()

الخرج:
2.png.bec830a409de87bc39c0131e12e50360.png
أو من خلال حلقة for:

import matplotlib.pyplot as plt
# تحديد بيانات 
x =[0, 3, 7, 12, 17]
y =[1, 4, 6, 7, 10]
# رسم البيانات
plt.plot(x, y)
xcoords = [2.22058956, 0.03088437, 4.20589566]
for xc in xcoords:
    plt.axvline(x = xc, ymin = 0.5, ymax = 1,
			color ='r')
plt.show()

الخرج:
1.png.ef24ae0e8c5a3818d119fd116c3fc386.png

  • 1
نشر

يمكن استخدام الدالة axcline لتحديد اتجاه العمود الذي تريد رسمه بسهولة وهي كالتالي:
 

matplotlib.pyplot.axhline(y=0, xmin=0, xmax=1, hold=None, **kwargs)

بحيث تقوم بتحديد المكان على المحور السيني x ومكان بدء الخط العمودي y ومكان نهايته.

المثال التالي يوضح كيفية استخدامها بسهوله داخل رسمه:

from matplotlib import pyplot as plt

xdata = list(range(10))
ydata = [_*2 for _ in xdata]

plt.plot(xdata, ydata, 'b')

plt.axvline(x=5, ymin=0.1, ymax=0.9)

plt.grid()
plt.show()

Capture.PNG.3813983c67d7ce828e4d213f1c103aa1.PNG

ويمكنك كذلك رسم عدة خطوط سويا في نفس الرسمة كالتالي:

from matplotlib import pyplot as plt

xdata = list(range(10))
ydata = [_*2 for _ in xdata]

plt.plot(xdata, ydata, 'b')

plt.hlines(y=5, xmin=0, xmax=10)
plt.vlines(x=5, ymin=0, ymax=20)

plt.grid()
plt.show()

Capture.PNG.57d546210d85a36b08a9a6216aca5f40.PNG

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...