Data Visualization

إتقان تصور البيانات ثلاثية الأبعاد باستخدام مخططات الأسطح في Matplotlib

Spread the love

إتقان تصور بيانات ثلاثية الأبعاد باستخدام مخططات الأسطح في Matplotlib

  1. إعداد بيئتك
  2. إنشاء مخطط سطح أساسي
  3. تخصيص مخطط السطح الخاص بك
  4. أمثلة متقدمة ومعالجة البيانات
  5. استكشاف الأخطاء وإصلاحها

إعداد بيئتك

قبل الغوص في إنشاء تصورات ثلاثية الأبعاد مذهلة، تأكد من تثبيت المكتبات اللازمة. استخدم pip لتثبيت Matplotlib و NumPy:


pip install matplotlib numpy

إنشاء مخطط سطح أساسي

يعتمد أساس أي مخطط سطح على شبكة من نقاط البيانات. سنستخدم `meshgrid` من NumPy لإنشاء هذه الشبكة، ثم نحدد دالة لتحديد قيم Z (الارتفاع) في كل نقطة.


import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

# إنشاء الشبكة
x = np.arange(-5, 5, 0.25)
y = np.arange(-5, 5, 0.25)
X, Y = np.meshgrid(x, y)

# تحديد قيم Z (مثال: قطع مكافئ)
R = np.sqrt(X**2 + Y**2)
Z = np.sin(R)

# إنشاء كائن الشكل والمحاور
fig = plt.figure(figsize=(10, 8))  # زيادة حجم الشكل لتحسين العرض
ax = fig.add_subplot(111, projection='3d')

# رسم السطح
surf = ax.plot_surface(X, Y, Z, cmap='viridis')  # باستخدام خريطة ألوان

# إضافة شريط ألوان
fig.colorbar(surf, shrink=0.5, aspect=5)

# تعيين العلامات والعنوان
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.set_title('مخطط سطح sin(√(X² + Y²))')

# عرض المخطط
plt.show()

هذا ينتج مخطط سطح بوضوح محسّن باستخدام خريطة ألوان وشريط ألوان.

تخصيص مخطط السطح الخاص بك

يوفر Matplotlib خيارات تخصيص واسعة لتكييف تصورك:

خرائط الألوان

تحكم في مخطط الألوان باستخدام الوسيطة `cmap`. استكشف خيارات مثل ‘plasma’، ‘magma’، ‘inferno’، ‘cividis’، و ‘coolwarm’.


ax.plot_surface(X, Y, Z, cmap='plasma')

خطوط المتساويات

تراكب خطوط المتساويات لتسليط الضوء على نطاقات قيم Z محددة. تحدد الوسيطة `offset` مستوى Z لخطوط المتساويات.


ax.contour(X, Y, Z, offset=-1, cmap='viridis')

الإضاءة وكثافة الشبكة

اضبط `rstride` و `cstride` للتحكم في كثافة شبكة السطح. تؤدي القيم الأعلى إلى أسطح أكثر سلاسة ولكن قد تفقد التفاصيل.


ax.plot_surface(X, Y, Z, cmap='viridis', rstride=2, cstride=2)

مخططات الهيكل السلكي

من أجل منظور مختلف، مثل السطح كهيكل سلكي:


ax.plot_wireframe(X, Y, Z, color='black')

العلامات والعناوين

العلامات والعناوين الواضحة ضرورية لتفسير البيانات.


ax.set_xlabel('علامة محور X')
ax.set_ylabel('علامة محور Y')
ax.set_zlabel('علامة محور Z')
ax.set_title('عنوان المخطط الوصفي')

أمثلة متقدمة ومعالجة البيانات

قم بتكييف هذه الكود لتصور أي دالة من متغيرين. استورد البيانات من الملفات (CSV، نص، إلخ) باستخدام مكتبات مثل pandas لإنشاء مصفوفات X و Y و Z الخاصة بك.

استكشاف الأخطاء وإصلاحها

* **شكل البيانات:** تأكد من أن مصفوفات X و Y و Z لها أبعاد متوافقة.
* **عبارات الاستيراد:** تأكد من الاستيرادات الصحيحة (`matplotlib.pyplot`، `numpy`، `mpl_toolkits.mplot3d`).
* **الإسقاط:** تأكد من تعيين إسقاط الرسم الفرعي إلى ‘3d’.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *