الأساطير ضرورية لإظهار البيانات بوضوح، لكنها أحيانًا تُشَوِّش الرسم البياني. يوفر ماتبلوتليب عدة طرق لإدارة الأساطير، مما يسمح لك بإزالتها تمامًا أو إخفائها ببساطة للحصول على صور أكثر وضوحًا. يستكشف هذا الدليل أربع تقنيات فعالة.
محتويات الجدول
1. إزالة المفتاح مباشرة
يستخدم هذا النهج `matplotlib.axes.Axes.get_legend().remove()` لإزالة المفتاح بعد إنشائه. إنه بسيط ولا يترك أي أثر.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
legend = ax.legend() # إنشاء المفتاح
legend.remove() # إزالته
plt.show()
2. إخفاء المفتاح
`matplotlib.axes.Axes.get_legend().set_visible(False)` يوفر مزيدًا من التحكم. يظل المفتاح في الذاكرة، مما يسمح لك بعرضه لاحقًا باستخدام `set_visible(True)`.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
legend = ax.legend()
legend.set_visible(False)
plt.show()
3. منع إنشاء المفتاح
الطريقة الأكثر كفاءة هي منع إنشاء المفتاح. استخدم `label=’nolegend’` (أو أي تسمية غير مستخدمة) ضمن دالة `plot()`.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='nolegend')
ax.plot([1, 2, 3], [7, 8, 9], label='nolegend')
plt.show()
4. إزالة المفتاح عن طريق تعيين السمة
يؤدي تعيين سمة `legend_` لكائن المحاور مباشرةً إلى `None` إلى إزالة أي مفتاح موجود ومنع إنشاء مفتاح في المستقبل.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Line 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Line 2')
ax.legend_ = None
plt.show()
يعتمد اختيار الطريقة المناسبة على احتياجاتك. لإزالة فورية، الطريقتان 1 و 4 فعالتان. لإمكانية إعادة العرض، الطريقة 2 هي الأفضل. منع الإنشاء (الطريقة 3) هو الأمثل عندما تعلم أن المفتاح غير ضروري.