English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

مخططات الكعكة في Matplotlib

يمكن عرض مخطط الدائرة القطعية فقط سلسلة من البيانات. يعرض مخطط الدائرة القطعية حجم العناصر في سلسلة البيانات الواحدة (يُطلق عليها الشريحة)، بنسبة إلى مجموع العناصر. يتم عرض نقاط البيانات في مخطط الدائرة القطعية كنسبة مئوية من الدائرة الكاملة.

يحتوي API لـ Matplotlib على دالة pie() تنتج مخطط دائرة قطعية يمثل البيانات في المصفوفة. يتم حساب مساحة الدائرة القطعية للشريحة كـ x/sum(x). إذا كان sum(x) < 1، فإن قيمة x تقدم مباشرة منطقة عشرية، ولا يتم تحويل المصفوفة. سيكون لديك مخطط دائرة قطعية يحتوي على دائرة خالية حجمها 1 - sum(x).

سيبدو مخطط الدائرة القطعية أفضل إذا كانت الرسوم البيانية والأسطح مستطيلة، أو إذا كانت اتجاهات الأسطح متساوية.

المعامل

الجدول التالي يوضح معامل مخطط الدائرة القطعية -

x - مصفوفة، حجم الدوائر القطعية. labels - قائمة. سلسلة من الأنواع، تقدم علامات للدوائر القطعية. colors - سلسلة من معامل الألوان لـ matplotlib، سيتم تكرار الرسوم البيانية الدائرية من خلالها. إذا كان None، سيتم استخدام الألوان الحالية في الحلقة النشطة. Autopct - نص يستخدم لوضع علامة على الدوائر القطعية. سيتم وضع العلامة داخل الدائرة القطعية. سلسلة النص ستكون fmt%pct.

كود التالي يستخدم دالة pie() لعرض مخطط دائرة قطعية لقائمة التسجيل في دورات اللغة البرمجية. باستخدام معامل autopct، يتم عرض النسبة المئوية في الدائرة القطعية المناسبة، حيث يتم تعيين المعامل إلى%1.2f%%.

مثال الكود:

# Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : ar.oldtoolbag.com
# Date : 2020-08-08
#! /usr/bin/env python
 #coding=utf-8
 import matplotlib.pyplot as plt
 import numpy as np
 import math
 plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
 plt.rcParams['axes.unicode_minus'] = False # أصل النص من【立地货】,يرجى الاتصال بالكاتب للحصول على إذن للنقل التجاري،للنقل غير التجاري يرجى الحفاظ على رابط النص الأصلي:
 fig = plt.figure()
 ax = fig.add_axes([0,0,1,1])
 ax.axis('equal')
 langs = ['C', 'C++', 'Java', 'Python', 'PHP']
 students = [23,17,35,29,12]
 ax.pie(students, labels = langs, autopct='%1.2f%%')
 plt.show()

تشغيل الشيفرة المثبتة أعلاه، للحصول على النتيجة التالية -