Matplotlib مكتبة قوية في بايثون لإنشاء تصورات البيانات. عند العمل مع رسوم فرعية متعددة، يُعد الوصف الواضح أمرًا ضروريًا. تستعرض هذه المقالة طرقًا فعالة لإضافة عناوين إلى رسومك الفرعية في Matplotlib.
محتويات الجدول
إضافة عناوين للرسوم الفرعية باستخدام set_title()
النهج الأكثر مباشرة هو استخدام طريقة set_title()
مباشرةً على كائن الرسم الفرعي. هذه الطريقة بديهية وسهلة القراءة.
import matplotlib.pyplot as plt
import numpy as np
# بيانات نموذجية
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# إنشاء رسوم فرعية
fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(8, 6))
# إضافة عناوين
axes[0].plot(x, y1)
axes[0].set_title('موجة جيبية')
axes[1].plot(x, y2)
axes[1].set_title('موجة جيبية تمامية')
# ضبط التصميم
plt.tight_layout()
plt.show()
تعيين عناوين للرسوم الفرعية باستخدام title.set_text()
بدلاً من ذلك، يمكنك استخدام سمة title
لكائن الرسم الفرعي. تعدل طريقة set_text()
لهذه السمة نص العنوان. وهي مكافئة وظيفيًا لـ set_title()
، لكنها تقدم بناء جملة مختلفًا قليلاً.
import matplotlib.pyplot as plt
import numpy as np
# بيانات نموذجية
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# إنشاء رسوم فرعية
fig, axes = plt.subplots(nrows=2, ncols=1, figsize=(8, 6))
# إضافة عناوين
axes[0].plot(x, y1)
axes[0].title.set_text('موجة جيبية')
axes[1].plot(x, y2)
axes[1].title.set_text('موجة جيبية تمامية')
plt.tight_layout()
plt.show()
استخدام plt.gca()
plt.gca()
(الحصول على المحاور الحالية) تُرجع المحاور النشطة حاليًا. بينما تكون مفيدة للرسوم الفرعية المفردة أو عندما تكون المحاور النشطة معروفة، إلا أنها أقل وضوحًا وقابلية للصيانة للرسوم الفرعية المتعددة. يُفضل عمومًا الرجوع مباشرةً إلى كائنات الرسوم الفرعية من أجل الوضوح.
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
plt.figure(figsize=(6, 4))
plt.plot(x, y1)
plt.gca().set_title('موجة جيبية باستخدام gca()')
plt.show()
أفضل الممارسات والاعتبارات
من أجل الوضوح وقابلية الصيانة، خاصةً مع الرسوم الفرعية المتعددة، يُوصى باستخدام axes[i].set_title()
أو axes[i].title.set_text()
مباشرةً. يجب استخدام plt.gca()
باعتدال. استخدم دائمًا plt.tight_layout()
لمنع تداخل العناصر. ضع في اعتبارك استخدام عناوين وصفية تعكس بدقة البيانات المعروضة في كل رسم فرعي.