يوفر هذا البرنامج التعليمي دليلًا شاملاً لإنشاء أنواع مختلفة من المخططات الدائرية باستخدام Matplotlib، وهي مكتبة قوية في بايثون لتصور البيانات. سنغطي المفاهيم الأساسية وسنتعمق في التقنيات المتقدمة، مثل تخصيص اتجاه المخطط وتسليط الضوء على شرائح بيانات محددة.
جدول المحتويات
- إنشاء مخطط دائري أساسي
- إنشاء مخطط دائري باتجاه عقارب الساعة
- تسليط الضوء على الشرائح باستخدام ميزة الانفجار
- تخصيص مظهر المخطط الدائري
إنشاء مخطط دائري أساسي
لنبدأ بإنشاء مخطط دائري بسيط. سنستخدم بيانات نموذجية تمثل توزيع أنواع مختلفة من الفواكه في سلة.
import matplotlib.pyplot as plt
# بيانات نموذجية
labels = 'Apples', 'Bananas', 'Cherries', 'Dates'
sizes = [15, 30, 45, 10]
# إنشاء المخطط الدائري
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=140)
# ضمان مخطط دائري
plt.axis('equal')
# إضافة عنوان
plt.title('توزيع الفواكه')
# عرض المخطط
plt.show()
يقوم هذا المقطع البرمجي أولاً باستيراد وحدة matplotlib.pyplot
. ثم يقوم بتعريف تسميات وأحجام مقابلة لكل شريحة دائرية. تقوم دالة plt.pie()
بإنشاء المخطط، وحساب وعرض النسب المئوية تلقائيًا (autopct
)، وبدء الشريحة الأولى بزاوية 140 درجة. تضمن plt.axis('equal')
أن يكون المخطط دائرة مثالية. أخيرًا، تضيف plt.title()
عنوانًا، ويعرض plt.show()
النتيجة.
إنشاء مخطط دائري باتجاه عقارب الساعة
لإنشاء مخطط دائري يتقدم باتجاه عقارب الساعة، نقوم ببساطة بتعديل معلمة startangle
داخل دالة plt.pie()
. ستضع قيمة startangle
التي تساوي 0 درجة الشريحة الأولى في أقصى نقطة على اليمين، مع اتباع الشرائح اللاحقة باتجاه عقارب الساعة.
import matplotlib.pyplot as plt
labels = 'Apples', 'Bananas', 'Cherries', 'Dates'
sizes = [15, 30, 45, 10]
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=0)
plt.axis('equal')
plt.title('توزيع الفواكه (باتجاه عقارب الساعة)')
plt.show()
تسليط الضوء على الشرائح باستخدام ميزة الانفجار
تتيح لك ميزة “الانفجار” التأكيد على شرائح محددة عن طريق فصلها قليلاً عن بقية الدائرة. يتم ذلك عن طريق توفير قائمة لمعلمة explode
. يجب أن يتطابق طول القائمة مع قائمة sizes
، حيث يمثل كل عنصر مسافة الإزاحة للشريحة المقابلة. تشير قيمة 0 إلى عدم وجود إزاحة.
import matplotlib.pyplot as plt
labels = 'Apples', 'Bananas', 'Cherries', 'Dates'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0) # انفجار الشريحة الثانية ('Bananas')
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', startangle=90)
plt.axis('equal')
plt.title('توزيع الفواكه (شريحة منفصلة)')
plt.show()
في هذا المثال، يتم فصل الشريحة الثانية (‘Bananas’) عن طريق تعيين قيمة الانفجار الخاصة بها إلى 0.1. جرّب قيم انفجار مختلفة لتحقيق التأكيد المرئي المطلوب. تأكد من أن مجموعة explode
تتوافق مع عدد الشرائح في المخطط الدائري.
تخصيص مظهر المخطط الدائري
يوفر Matplotlib خيارات واسعة لتخصيص المخططات الدائرية. يمكنك ضبط الألوان، وإضافة أساطير، وتغيير أحجام الخطوط، وأكثر من ذلك بكثير. استكشف وثائق Matplotlib للحصول على قائمة كاملة بخيارات التخصيص.