القائمة الرئيسية

الصفحات

شرح مكتبة Matplotlib في لغة بايثون 2025: دليل رسم البيانات مع 7 أمثلة برمجية

شرح مكتبة Matplotlib: كيفية رسم البيانات في لغة بايثون

بعد تعلم مكتبتي NumPy و Pandas لتحليل البيانات، تأتي مرحلة عرض النتائج باستخدام Matplotlib. تعد هذه المكتبة الأساس في لغة بايثون لرسم المخططات البيانية، وتعتمد عليها معظم مكتبات الرسم الأخرى مثل Seaborn.

💡 خلاصة: مكتبة Matplotlib هي الأداة التي تحول الأرقام والبيانات الخام إلى رسوم بيانية واضحة ومفهومة.

أولاً: التثبيت والاستدعاء

# تثبيت المكتبة
pip install matplotlib

# استدعاء المكتبة في بداية البرنامج
import matplotlib.pyplot as plt
import numpy as np

ثانياً: أهم أنواع الرسوم البيانية مع أمثلة برمجية

1. المخطط الخطي Line Plot

يستخدم لعرض تغير القيم مع الزمن، مثل أسعار الأسهم أو درجات الحرارة أو الأرباح الشهرية.

x = [1, 2, 3, 4, 5]
y = [2, 5, 7, 10, 12]

plt.plot(x, y, marker='o', color='#013243', linewidth=2)
plt.title('Sales Growth Over 5 Months')
plt.xlabel('Month')
plt.ylabel('Sales in Millions')
plt.grid(True, alpha=0.3)
plt.show()

الشكل 1: يوضح المخطط السابق نمو المبيعات خلال خمسة أشهر من 2 مليون إلى 12 مليون.

2. أشهر دوال مكتبة Matplotlib

الدالةنوع الرسمحالة الاستخداممثال مختصر
plt.plot()خطي Lineعرض البيانات المتصلة زمنياًplt.plot(x, y)
plt.scatter()تشتت Scatterتوضيح العلاقة بين متغيرينplt.scatter(x, y)
plt.bar()أعمدة Barالمقارنة بين الفئاتplt.bar(names, values)
plt.hist()مدرج تكراريعرض توزيع البياناتplt.hist(data, bins=10)
plt.pie()دائري Pieتمثيل النسب المئويةplt.pie(sizes, labels=names)
plt.boxplot()صندوق Boxاكتشاف القيم الشاذةplt.boxplot(data)

3. تخصيص المخططات: العناوين والشبكة والحفظ

الأمر البرمجيالوظيفة
plt.title('Chart Title', fontsize=16, color='#013243')إضافة عنوان للمخطط
plt.xlabel('X Axis')تسمية المحور الأفقي
plt.ylabel('Y Axis')تسمية المحور العمودي
plt.legend(['Line 1', 'Line 2'])إظهار مفتاح الرسم
plt.grid(True, alpha=0.3)إظهار خطوط الشبكة الخلفية
plt.savefig('chart.png', dpi=300)حفظ المخطط كصورة عالية الجودة
🔥 ملاحظة تقنية: ينصح دائماً باستخدام الأمر plt.figure(figsize=(10,6)) قبل بدء الرسم للتحكم في أبعاد الصورة. المقاس 10×6 مناسب للمواقع والبحوث العلمية.

ثالثاً: ثلاثة أمثلة عملية كاملة

المثال الأول: مقارنة المبيعات باستخدام مخطط الأعمدة

products = ['Phone', 'Laptop', 'Headphone', 'Watch']
sales_2024 = [150, 80, 200, 120]
sales_2025 = [180, 95, 240, 140]

x = np.arange(len(products))
width = 0.35

plt.figure(figsize=(10,6))
plt.bar(x - width/2, sales_2024, width, label='2024', color='#013243')
plt.bar(x + width/2, sales_2025, width, label='2025', color='#025d7a')
plt.xlabel('Product')
plt.ylabel('Sales Count')
plt.title('Sales Comparison 2024 vs 2025', color='#013243', fontsize=14)
plt.xticks(x, products)
plt.legend()
plt.show()

الشكل 2: يقارن المخطط السابق مبيعات أربعة منتجات بين عامي 2024 و 2025.

المثال الثاني: توزيع الدرجات باستخدام المدرج التكراري

# توليد 1000 درجة عشوائية بمتوسط 75
grades = np.random.normal(75, 10, 1000)

plt.figure(figsize=(10,6))
plt.hist(grades, bins=20, color='#013243', edgecolor='white', alpha=0.8)
plt.title('Grades Distribution of 1000 Students', color='#013243', fontsize=14)
plt.xlabel('Grade')
plt.ylabel('Number of Students')
plt.axvline(grades.mean(), color='#ff6f00', linestyle='dashed', linewidth=2, label='Mean')
plt.legend()
plt.show()

الشكل 3: يعرض المدرج التكراري توزيع درجات 1000 طالب، مع توضيح المتوسط الحسابي بالخط المتقطع.

المثال الثالث: رسم أربعة مخططات في نافذة واحدة Subplots

x = np.linspace(0, 10, 100)

plt.figure(figsize=(12,8))

# المخطط الأول
plt.subplot(2, 2, 1)
plt.plot(x, np.sin(x), color='#013243')
plt.title('Sin')

# المخطط الثاني
plt.subplot(2, 2, 2)
plt.plot(x, np.cos(x), color='#025d7a')
plt.title('Cos')

# المخطط الثالث
plt.subplot(2, 2, 3)
plt.plot(x, np.tan(x), color='#013243')
plt.title('Tan')

# المخطط الرابع
plt.subplot(2, 2, 4)
plt.plot(x, x**2, color='#025d7a')
plt.title('X^2')

plt.tight_layout()
plt.show()

الشكل 4: يوضح كيفية دمج أربعة رسوم بيانية مختلفة في صورة واحدة باستخدام دالة subplot.

رابعاً: المقارنة بين Matplotlib و Seaborn

MatplotlibSeaborn
تحكم كامل في جميع تفاصيل الرسمرسوم جاهزة بتصميم احترافي وبأقل كود
تتطلب كتابة أوامر متعددة للتخصيصتوفر أنماطاً وألواناً جاهزة
المكتبة الأساسية التي يجب تعلمها أولاًمبنية على Matplotlib وتعد امتداداً لها
الأفضل للرسوم العلمية المعقدةالأفضل للرسوم الإحصائية السريعة
✅ الخلاصة: البداية تكون بإتقان الدوال plt.plot() و plt.bar() و plt.hist(). هذه الدوال الثلاث تغطي ما يقارب 80% من حالات الاستخدام العملية في تحليل البيانات.
أنت الان في اول موضوع

تعليقات