بازگشت به دوره

آموزش رایگان صفر تا صد یادگیری ماشین (Machine Learning) به زبان ساده

0% تکمیل‌شده
0/0 مرحله

نمودار پراکندگی (Scatter Plot) یکی از ابزارهای مهم در یادگیری ماشین برای تحلیل داده‌ها است. در این مقاله، نحوه رسم این نمودار با پایتون و Matplotlib را یاد می‌گیریم.نمودار پراکندگی

فهرست مطالب

  1. نمودار پراکندگی چیست؟
  2. رسم نمودار پراکندگی با Matplotlib
  3. تفسیر نمودار پراکندگی
  4. ایجاد داده‌های تصادفی برای نمودار پراکندگی

1. نمودار پراکندگی چیست؟

نمودار پراکندگی (Scatter Plot) نوعی نمودار است که در آن، هر مقدار از مجموعه داده‌ها به‌صورت یک نقطه نمایش داده می‌شود. این نمودار برای مشاهده روابط بین دو متغیر استفاده می‌شود.

💡 مثال: فرض کنید می‌خواهیم بررسی کنیم که آیا سن خودروها با سرعت آن‌ها رابطه‌ای دارد یا نه. در این حالت، سن خودرو را روی محور X و سرعت آن را روی محور Y قرار می‌دهیم.

2. رسم نمودار پراکندگی با Matplotlib

در پایتون، برای رسم نمودار پراکندگی از کتابخانه Matplotlib و متد ()scatter استفاده می‌کنیم. این متد دو آرایه نیاز دارد:

  • یک آرایه برای مقادیر محور X (مثلاً سن خودروها)
  • یک آرایه برای مقادیر محور Y (مثلاً سرعت خودروها)

📌 مثال: رسم نمودار پراکندگی برای سن و سرعت خودروها

import matplotlib.pyplot as plt

x = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
y = [99, 86, 87, 88, 111, 86, 103, 87, 94, 78, 77, 85, 86]

plt.scatter(x, y)
plt.xlabel("سن خودرو (سال)")
plt.ylabel("سرعت خودرو (کیلومتر در ساعت)")
plt.title("نمودار پراکندگی سن و سرعت خودروها")
plt.show()

🔍 خروجی: این نمودار نشان می‌دهد که سرعت خودروها چطور با افزایش سن آن‌ها تغییر می‌کند.

3. تفسیر نمودار پراکندگی

از نمودار بالا، می‌توانیم چند نکته را متوجه شویم:
سریع‌ترین خودروها هر دو 2 ساله هستند.
کندترین خودرو 12 ساله است.
آیا خودروهای جدیدتر سریع‌ترند؟ شاید، اما این فقط ۱۳ خودرو است، پس نتیجه‌گیری قطعی نیاز به داده‌های بیشتر دارد.

4. ایجاد داده‌های تصادفی برای نمودار پراکندگی

در یادگیری ماشین، اغلب نیاز به مجموعه داده‌های بزرگی داریم. اما همیشه داده‌های واقعی در دسترس نیستند. در چنین مواردی، می‌توانیم از کتابخانه NumPy برای تولید داده‌های تصادفی استفاده کنیم.

📌 مثال: تولید داده‌های تصادفی و رسم نمودار پراکندگی

import numpy
import matplotlib.pyplot as plt

x = numpy.random.normal(5.0, 1.0, 1000)  # داده‌های محور X با میانگین 5 و انحراف معیار 1
y = numpy.random.normal(10.0, 2.0, 1000)  # داده‌های محور Y با میانگین 10 و انحراف معیار 2

plt.scatter(x, y)
plt.xlabel("متغیر X")
plt.ylabel("متغیر Y")
plt.title("نمودار پراکندگی داده‌های تصادفی")
plt.show()

🔍 تحلیل خروجی:
✅ بیشتر نقاط در اطراف مقدار 5 در محور X و 10 در محور Y قرار گرفته‌اند.
✅ داده‌های محور Y پراکندگی بیشتری دارند.


نتیجه‌گیری

✅ نمودار پراکندگی یک ابزار مهم برای تحلیل داده‌ها است.
✅ می‌توانیم از Matplotlib برای رسم آن و از NumPy برای ایجاد داده‌های تصادفی استفاده کنیم.
✅ تفسیر نمودارها نیازمند بررسی دقیق و داده‌های بیشتر است.

💡 سوال برای شما: آیا تا به حال با داده‌های خودتان نمودار پراکندگی رسم کرده‌اید؟ اگر نه، پیشنهاد می‌کنم همین حالا امتحان کنید! 🚀