نمودار خطی و پراکندگی
رسم نمودار خطی برای روند زمانی و نمودار پراکندگی برای رابطه دو متغیر با matplotlib و تفسیر آنها
نمودار خطی (Line Plot)
نمودار خطی برای نمایش روند در طول زمان است: قیمت سهام، دما، بازدید سایت. محور افقی معمولاً زمان و محور عمودی مقدار است. اتصال نقاط، جهت و شیب تغییرات را نشان میدهد.
plt.plot(days, temperature)
plt.title("دما در هفته")
plt.xlabel("روز")
plt.ylabel("دمای هوا")
چند خط در یک نمودار
برای مقایسه دو سری زمانی، دو خط روی هم میکشیم و با legend آنها را تفکیک میکنیم:
plt.plot(days, temp_2023, label="سال گذشته")
plt.plot(days, temp_2024, label="امسال")
plt.legend()
نمودار پراکندگی (Scatter Plot)
نمودار پراکندگی رابطه دو متغیر عددی را نشان میدهد: هر نقطه یک مشاهده است. با نگاه به شکل ابر نقاط میتوانید همبستگی را ببینید:
- نقاط حول یک خط صعودی ← همبستگی مثبت
- نقاط حول یک خط نزولی ← همبستگی منفی
- نقاط پخش و بیشکل ← بدون رابطه خطی
plt.scatter(study_hours, grades)
plt.xlabel("ساعات مطالعه")
plt.ylabel("نمره")
کدام را انتخاب کنیم؟
| سؤال | نمودار درست |
|---|---|
| مقدار چطور در طول زمان تغییر کرده؟ | خطی |
| آیا بین دو متغیر رابطه هست؟ | پراکندگی |
| مقایسه چند دسته | میلهای (مبحث بعد) |
هشدار: برای داده زمانی از پراکندگی استفاده نکنید! نقاط پراکنده روند را نشان نمیدهند؛ ترتیب زمانی در خطی حفظ میشود.
نکات حرفهای
- در پراکندگی با هزاران نقطه، شفافیت (alpha) بدهید تا تراکم دیده شود:
plt.scatter(x, y, alpha=0.3) - رنگ نقاط را میتوان به متغیر سوم گره زد (نمودار حبابی یا رنگبندی)
- در خطی، marker="o" کمک میکند نقاط داده هم دیده شوند
- همیشه بعد از دیدن همبستگی در پراکندگی، ضریب پیرسون را هم محاسبه کنید
جمعبندی
- خطی برای روند زمانی؛ پراکندگی برای رابطه دو متغیر
- شکل ابر نقاط در پراکندگی، نوع همبستگی را لو میدهد
- legend برای چند خط و alpha برای تراکم نقاط
این مبحث بخشی از دوره آموزش کامل علم داده است.