كيفية إنشاء مؤامرة التوزيع في matplotlib
هناك طريقتان شائعتان لإنشاء مخطط التوزيع في بايثون:
الطريقة الأولى: إنشاء رسم بياني باستخدام Matplotlib
import matplotlib. pyplot as plt
plt. hist (data, color=' lightgreen ', ec=' black ', bins= 15 )
لاحظ أن اللون يتحكم في لون تعبئة الأشرطة، ويتحكم ec في لون حواف الشريط، وتتحكم الحاويات في عدد الصناديق في الرسم البياني.
الطريقة الثانية: إنشاء رسم بياني بمنحنى الكثافة باستخدام Seaborn
import seaborn as sns
sns. displot (data, kde= True , bins= 15 )
لاحظ أن kde=True يحدد أنه يجب تركيب منحنى الكثافة على الرسم البياني.
توضح الأمثلة التالية كيفية استخدام كل طريقة عمليًا لتصور توزيع القيم في مصفوفة NumPy التالية:
import numpy as np
#make this example reproducible.
n.p. random . seed ( 1 )
#create numpy array with 1000 values that follows normal dist with mean=10 and sd=2
data = np. random . normal (size= 1000 , loc= 10 , scale= 2 )
#view first five values
data[: 5 ]
array([13.24869073, 8.77648717, 8.9436565, 7.85406276, 11.73081526])
المثال 1: إنشاء رسم بياني باستخدام Matplotlib
يمكننا استخدام الكود التالي لإنشاء رسم بياني في Matplotlib لتصور توزيع القيم في مصفوفة NumPy:
import matplotlib. pyplot as plt
#create histogram
plt. hist (data, color=' lightgreen ', ec=' black ', bins= 15 )
يعرض المحور x القيم من مصفوفة NumPy ويعرض المحور y تكرار هذه القيم.
لاحظ أنه كلما زادت القيمة التي تستخدمها لوسيطة bins ، زاد عدد الأشرطة الموجودة في الرسم البياني.
مثال 2: قم بإنشاء رسم بياني بمنحنى الكثافة باستخدام Seaborn
يمكننا استخدام الكود التالي لإنشاء رسم بياني مع منحنى كثافة متراكب باستخدام مكتبة تصور البيانات البحرية:
import seaborn as sns
#create histogram with density curve overlaid
sns. displot (data, kde= True , bins= 15 )
والنتيجة هي رسم بياني يتم فيه فرض منحنى الكثافة.
تتمثل ميزة استخدام منحنى الكثافة في أنه يلخص شكل التوزيع باستخدام منحنى واحد مستمر.
ملاحظة : يمكنك العثور على الوثائق الكاملة لوظيفة seaborn displot() هنا .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية إنشاء مخططات شائعة أخرى في بايثون:
كيفية إنشاء مخططات شريطية مكدسة في Matplotlib
كيفية إنشاء رسم بياني للتردد النسبي في Matplotlib
كيفية إنشاء مخطط باربلوت أفقي في سيبورن