تصوير البيانات

15.5 تصوير البيانات

أهداف التعلم

في نهاية هذا القسم، ينبغي أن تكون قادرًا على

  • شرح سبب أهمية التصوير في علم البيانات.
  • اختيار التصوير المناسب لمهمة معينة.
  • استخدام مكتبات Python للتصوير لإنشاء تصورات بيانية.

لماذا التصوير؟

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

نوع التصوير الوصف الفوائد/الاستخدام الشائع
مخطط الأعمدة (Bar plot) أعمدة مستطيلة مقارنة القيم عبر فئات مختلفة.
مخطط الخطوط (Line plot) سلسلة من نقاط البيانات المتصلة بقطع خطية تصوير الاتجاهات والتغيرات.
مخطط الانتشار (Scatter plot) نقاط بيانات فردية تمثل العلاقة بين متغيرين تحديد الارتباطات والتجمعات والقيم الشاذة.
مخطط التكرار (Histogram plot) أعمدة مستطيلة تمثل توزيع متغير مستمر عن طريق تقسيم نطاق المتغير إلى فئات (bins) وتمثيل تكرار أو عدد البيانات داخل كل فئة تلخيص توزيع البيانات.
مخطط الصندوق (Box plot) صندوق مستطيل مع أشرطة (whiskers) يلخص توزيع متغير مستمر، بما في ذلك الوسيط والربيعيات (quartiles) والقيم الشاذة تلخيص توزيع البيانات ومقارنة المتغيرات المختلفة.
جدول 15.7 أنواع التصوير الشائعة.

نقطة تحقق

أنواع التصوير

مفاهيم تطبيقية

مقارنة طرق التصوير

1.
أي من أنواع المخططات التالية هو الأنسب لمقارنة توزيع متغير مستمر؟
  1. مخطط الانتشار
  2. مخطط التكرار
  3. مخطط الخطوط
2.
أي من أنواع المخططات التالية هو الأنسب لتصوير القيم الشاذة والربيعيات لمتغير مستمر؟
  1. مخطط التكرار
  2. مخطط الأعمدة
  3. مخطط الصندوق
3.
أي من أنواع المخططات التالية فعال لعرض الاتجاهات والتغيرات بمرور الوقت؟
  1. مخطط الخطوط
  2. مخطط الأعمدة
  3. مخطط التكرار

أدوات تصوير البيانات

ثمة مكتبات Python عديدة لتصوير البيانات، تتيح إنشاء أنواع مختلفة من المخططات بإمكانيات متنوعة. من بين الأطر الأكثر شيوعًا Matplotlib و Plotly و Seaborn. فيما يلي تلخيص لبعض الوظائف المفيدة لـ Matplotlib.

نوع المخطط الأسلوب
مخطط الأعمدة

تستقبل الدالّة plt.bar(x, height) مدخلين، x و height، وترسم أعمدة لكل قيمة x بالارتفاع المعطى في المتغير height.

مثال الناتج
import matplotlib.pyplot as plt

# البيانات
categories = ["Course A", "Course B", "Course C"]
values = [25, 40, 30]

# Create the bar chart
fig = plt.bar(categories, values)

# تخصيص المخطط
plt.title("Number of students in each course')
plt.xlabel("Courses")
plt.ylabel("Number of students")

# عرض المخطط
plt.show()
مثال على مخطط الأعمدة
جدول 15.8 وظائف Matplotlib. مخطط الأعمدة.
نوع المخطط الأسلوب
مخطط الخطوط

تستقبل الدالّة plt.plot(x, y) مدخلين، x و y، وترسم خطوطًا تربط أزواج القيم (x, y).

مثال الناتج
import matplotlib.pyplot as plt

# البيانات
month = ["Jan", "Feb", "Mar", "Apr", "May"]
inflation = [6.41, 6.04, 4.99, 4.93, 4.05]

# إنشاء المخطط الخطي
plt.plot(month, inflation, marker="o", 
linestyle="-", color="blue")

# تخصيص المخطط
plt.title("Inflation trend in 2023")
plt.xlabel("Month")
plt.ylabel("Inflation")

# عرض المخطط
plt.show()
مثال على مخطط الخطوط
جدول 15.9 وظائف Matplotlib. مخطط الخطوط.
نوع المخطط الأسلوب
مخطط الانتشار

تستقبل الدالّة plt.scatter(x, y) مدخلين، x و y، وترسم نقاطًا تمثل أزواج (x, y).

مثال الناتج
import matplotlib.pyplot as plt

# البيانات
x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y = [10, 8, 6, 4, 2, 5, 7, 9, 3, 1]

# إنشاء مخطط الانتشار
plt.scatter(x, y, marker="o", color="blue")

# تخصيص المخطط
plt.title("Scatter Plot Example")
plt.xlabel("X")
plt.ylabel("Y")

# عرض المخطط
plt.show()
مثال على مخطط الانتشار
جدول 15.10 وظائف Matplotlib. مخطط الانتشار.
نوع المخطط الأسلوب
مخطط التكرار

تستقبل الدالّة plt.hist(x) مدخلًا واحدًا، x، وترسم مخطط تكرار للقيم في x لإظهار التوزيع أو الاتجاه.

مثال الناتج
import matplotlib.pyplot as plt
import numpy as np

# البيانات: random 1000 samples
data = np.random.randn(1000)

# إنشاء المخطط التكراري
plt.hist(data, bins=30, edgecolor="black")

# تخصيص المخطط
plt.title("Histogram of random values")
plt.xlabel("Values")
plt.ylabel("Frequency")

# عرض المخطط
plt.show()
مثال على مخطط التكرار
جدول 15.11 وظائف Matplotlib. مخطط التكرار.
نوع المخطط الأسلوب
مخطط الصندوق

تستقبل الدالّة plt.boxplot(x) مدخلًا واحدًا، x، وتمثل الحد الأدنى، والحد الأقصى، والربيعيات الأول والثاني والثالث، بالإضافة إلى القيم الشاذة في x.

مثال الناتج
import matplotlib.pyplot as plt
import numpy as np

# البيانات: random 100 samples
data = [np.random.normal(0, 5, 100)]

# إنشاء المخطط الصندوقي
plt.boxplot(data)

# تخصيص المخطط
plt.title("Box Plot of random values")
plt.xlabel("Data Distribution")
plt.ylabel("Values")

# عرض المخطط
plt.show()
مخطط صندوق بعنوان 'مخطط صندوق للقيم العشوائية' يوضح توزيع البيانات. الوسيط قريب من -1، الصندوق يغطي القيم من -4 إلى 2، الأشرطة تمتد من -12 إلى 7، وتظهر قيمتان شاذتان فوق 10.
جدول 15.12 وظائف Matplotlib. مخطط الصندوق.

مفاهيم تطبيقية

أساليب Matplotlib

4.
بالنظر إلى الشِفرة التالية، أي من استدعاءات الدوال مناسب لإظهار الارتباط بين x و y؟
import matplotlib.pyplot as plt

# البيانات
x = [1, 2, 3, 4, 5]
y = [10, 15, 12, 18, 20]
  1. plt.boxplot(x)
  2. plt.hist(y)
  3. plt.scatter(x, y)
5.
ما الذي يتم رسمه باستخدام الشِفرة أدناه؟
import matplotlib.pyplot as plt

# البيانات
categories = ['A', 'B', 'C', 'D']
values = [10, 15, 12, 18]
plt.bar(categories, values)
  1. مخطط تكرار
  2. مخطط أعمدة
  3. مخطط خطوط
6.
أي مكتبة في Python تُستخدم بشكل أكثر شيوعًا لإنشاء تصويرات تفاعلية؟
  1. Matplotlib
  2. Plotly
  3. Pandas

استكشاف إضافي

يرجى الرجوع إلى دليل المستخدم التالي لمزيد من المعلومات حول مكتبات Matplotlib و Plotly و Seaborn.

ممارسة البرمجة مع غوغل

استخدم مستند بيئة غوغل كولاب أدناه لممارسة مهمة تصوير على مجموعة بيانات معينة.

مستند بيئة غوغل كولاب