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

السؤال

نشر (معدل)

لدي ال plot التالي وأريد عكس قيم المحور X فيه:

import matplotlib.pyplot as plt
x = [1, 6, 9, 5,7]
y = [3,8,4,15,9]
plt.scatter(x,y)
plt.title('Matplotlib Reverse Example')
plt.show()

index.png.f8d7eaf7d1f1b5c2972748a33260579a.pngأريد أن يتم عكس النقط معها أيضاُ.

تم التعديل في بواسطة Ali Ismael

Recommended Posts

  • 1
نشر

يمكنك القيام بذلك من خلال invert_xaxis كالتالي:

x = [1, 6, 9, 5,7]
y = [3,8,4,15,9]
plt.scatter(x,y)
# عكس المحور
plt.gca().invert_xaxis()
plt.title('Matplotlib Reverse Example')
plt.show()

الخرج:
2.png.cf40e0cb28ac55a4b77f6566452301b1.png
وبشكل مشابه بالنسبة للمحور العمودي يمكنك استخدام invert_yaxis:

plt.gca().invert_yaxis()

أو من خلال set_xlim لضبط الحدود بالشكل الذي نريده كالتالي:

x = [1, 6, 9, 5,7]
y = [3,8,4,15,9]
plt.scatter(x,y)
ax = plt.gca()
ax.set_xlim(ax.get_xlim()[::-1])
plt.title('Matplotlib Reverse Example')
plt.show()

حيث نمرر لها get_xlim للحصول على الامتداد الحالي للمحور ثم نقوم بعكسه من خلال [::-1].
أما بالنسبة للمحور العمودي ففقط نبدل إلى set_ylim و get_ylim.

  • 0
نشر

يمكنك استخدام  xlim  و ylim لعكسهما بسهولة حيث نبدل أقصي قيمة بأقل قيمة ببساطة كالتالي:

x = [1, 6, 9, 5,7]
y = [3,8,4,15,9]
plt.scatter(x,y)
ax = plt.gca()
plt.xlim(max(x), min(x))
plt.ylim(max(y), min(y))
plt.title('Matplotlib Reverse Example')
plt.show()

وبنفس الطريقة يمكننا استخدام axis بدلا من xlim كالتالي:

x = [1, 6, 9, 5,7]
y = [3,8,4,15,9]
plt.scatter(x,y)
ax = plt.gca()
plt.axis([max(x), min(x), max(y), min(y)])
plt.title('Matplotlib Reverse Example')
plt.show()

 

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...