رضا
رضا
خواندن ۷ دقیقه·۲ سال پیش

رسم نمودار در پایتون با کتابخانه Matplotlib


رسم نمودار در پایتون یا مصورسازی داده ها (Data visualization) یکی از نیازمندی دانشجویان، متخصصان و تحلیلگران داده میباشد. همانطور که میدانید زبان پایتون یکی از قدرتمندترین و پرکاربردترین ابزارها در حوزه داده و اطلاعات میباشد. و در همین راستا چند ماژول یا کتابخانه برای رسم نمودار ارائه کرده است.

مصورسازی داده و رسم نمودار یک مهارت مهم و کلیدی زندگی کاری و آکادمیک به حساب می آید.

تصاویر و نمودارها درک سرعت درک مطلب و انتقال اطلاعات را بالاتر میبرند.

رسم نمودار در پایتون

زبان برنامه نویسی پایتون علاوه بر اینکه یکی از زبان های برنامه نویسی محبوب در دنیا میباشد، زمانی که صحبت از علم داده میباشد، به عنوان یک زبان پیشگام حرف های زیادی برای گفتن دارد.

زبان برنامه نویسی پایتون قدرت بسیار بالایی در پردازش داده ها دارد. همین امر باعث شده یکی از ابزارهای اصلی کابران و متخصصین حوزه علم داده به شمار رود.

امروزه نمودارها و عکس ها بیشتر، روشن تر و گویاتر صحبت میکنند. بدون شک میتوان گفت که انتقال مفاهیم و نتیجه کارها از طریق نمودار و عکس به مراتب اثربخش تر از راههای کلاسیک میباشد.



با کمک مصورسازی داده میتوانیم الگوهای موجود در داده ها را شناسایی کنیم. رسم نمودار و مصور سازی این داده‌ها راهی بهینه و مناسب برای کمک به درک و شناسایی الگوهای موجود در داده‌ها و انتقال مفاهیم میباشد. همچنین فرآیند تحلیل و تصمیم گیری مبتنی بر اطلاعات را راحت تر میکند.

انواع کتابخانه های رسم نمودار در پایتون

ابزارهای مختلفی برای رسم نمودار در زبان برنامه نویسی پایتون وجود دارد. این ابزارها در قالب یک پک، ماژول یا کتابخانه عرضه شده است. ما در زیر کتابخانه های بزرگ و معروف رسم نمودار در پایتون را لیست کرده ایم:

  1. کتابخانه Matplotlib
  2. کتابخانه Seaborn
  3. کتابخانه Bokeh
  4. کتابخانه Plotly
  5. کتابخانه Ggplot
  6. کتابخانه Geoplotlib
  7. کتابخانه Folium
  8. کتابخانه Altair
  9. کتابخانه Pygal

جهت اطلاع، کتابخانه Matplotlib اولین کتابخانه مصورسازی داده ها بوسیله زبان پایتون میباشد که بسیار رایج و پرکاربرد است. و در این مقاله سعی کردیم یک معرفی جامع به همراه چند مثال از ماژول Matplotlib ارائه دهیم.

 کتابخانه Matplotlib - کتابخانه مصورسازی داده ها بوسیله زبان پایتون
کتابخانه Matplotlib - کتابخانه مصورسازی داده ها بوسیله زبان پایتون


نصب این کتابخانه بسیار ساده است و من فرض میکنم که شما این کتابخونه رو نصب کردید. (البته راهنمای نصب کتابخونه رو میتونید از اینجا بخونید و نصب کنید)

ولی به هر حال هر سوالی داشتید ازم بپرسید.


ویژگی کتابخانه Matplotlib

  • اولین، محبوب ترین و پر استفاده ترین کتابخانه زبان پایتون برای مصورسازی دیتا است.
  • در ۲۰۰۳ متولد شد و با توجه به قدمت بالای خود، استفاده کنندگان و طرفداران زیادی را دارد و این باعث شده که مثال ها و آموزش های زیادی در مورد آن در سطح اینترنت وجود داشته باشد.
  • انواع گراف ها را دارد (و همچنین نمودارهای ۲ بعدی و ۳ بعدی)
  • امکان اجرای انواع شخصی سازی یا customize نمودارها را دارد.
  • یادگیری آن بسیار آسان است
  • نمودارها را میتوان در انواع فرمت ها از آن خروجی گرفت
  • اگر نیاز به جزئیات در نمودارهای خود دارید، matplotlib انتخاب بسیار خوبی است.
  • اگر پیدا کردن راحت آموزش ها برای شما مهم است، matplotlib انتخاب بسیار خوبی است.
  • بسیاری از کتابخانه های مصورسازی از دل این کتابخانه رشد کرده اند.


در ادامه چندین مثال ارائه شده است. در صورت نیاز به آموزش ویدیویی و جزئیات بیشتر، ما دوره آموزشی مصورسازی داده و رسم نمودار در پایتون که سعی شده بصورت جامع و کامل و به همرا مثال های مختلف ارائه شود را به شما ئیشنهاد میدهیم.


رسم خط در پایتون (نمودار خطی)

زمانی که ما بخواهیم نحوه تغییرات یک یا چند کمیت در طول زمان یا … به نمایش بگذاریم، میتوانیم از این نوع نمودار استفاده کنیم. برای رسم این نمودار فقط کافیست داده های محور x و محور y را مشخص کنیم.

ساده ترین حالت برای رسم نمودار خط:

import numpy as np import matplotlib.pyplot as plt x = [0, 1, 2, 3, 4, 5, 8, 9] y = [-1, 0, 2, 3, 0, -3, 0, -2] plt.plot(x, y) plt.show()

نتیجه:

مثالی از نمودار خط در پایتون
مثالی از نمودار خط در پایتون


رسم نمودار سینوسی در python

import matplotlib.pyplot as plt import numpy as np x = np.arange(-5, 2, 0.01) y = np.sin(2.4 * np.pi * x) plt.plot(x, y) plt.show()

کد فوق نمودار زیر را رسم خواهد کرد:

مثالی از ساده ترین نمودار سینوسی در پایتون
مثالی از ساده ترین نمودار سینوسی در پایتون


ترسیم نمودار میله ای یا ستونی

نمودار میله ای یا ستونی (Bar Chart)، یک نمایش گرافیکی از داده‌ها با استفاده از میله‌ها یا ستون‌ها با ارتفاع‌های متفاوت است. زمانی که ما چند دسته یا نوع از داده ها را در اختیار داریم که هرکدام فراوانی های مختلف دارد (مثلا تعداد آرائ چند کاندید) نمودار میله ای گزینه خوبی میباشد تا اطلاعات را به تصویر بکشیم.

import matplotlib.pyplot as plt x = [0, 2, 4, 6, 8, 10] y = [10, 8, 6, 4, 7, 1] plt.bar(x, y) bar_names = ('Python', 'C++', 'Java', 'Perl', 'Scala', 'Lisp') plt.xticks(x, bar_names) plt.show()

کد فوق نمودار زیر را رسم خواهد کرد:

مثالی از ساده ترین نمودار ستونی در پایتون
مثالی از ساده ترین نمودار ستونی در پایتون

نمودارهای میله‌ای در مواردی مناسب هستند که داده‌ها دسته‌بندی شده باشند. اما اگر داده‌های پیوسته‌ای دارید بهتر است از هیستوگرام استفاده کنید.

نمودار دایره ای در پایتون

گاهی نیاز داریم که سهم انواع دسته ها را نمایش دهیم. سهم هر یک از گروه‌ها نسبت به کل، توسط نمودار دایره‌ای (Pie Chart) به نمایش در می‌آید. این نمودار به شکل یک دایره‌ای است که به برش هایی تقسیم شده.

import matplotlib.pyplot as plt labels = 'Python', 'C++', 'Ruby', 'Java' sizes = [215, 130, 245, 210] plt.pie(sizes, labels=labels) plt.show()

کد فوق نمودار زیر را رسم خواهد کرد:

مثالی از ساده ترین نمودار دایره ای در پایتون
مثالی از ساده ترین نمودار دایره ای در پایتون


نمودار دایره ای، به نظرم بدترین نوع مصورسازی داده هستش. ترجیحا هیچوقت استفاده نکنید از این نمودار.


رسم نمودار هیستوگرام در پایتون

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

به طور معمول بین ستون‌ها در نمودار‌های میله‌ای فواصل مناسبی قرار می‌گیرند تا شبیه هیستوگرام نباشند و باعث اشتباه نشوند.

مثالی از نمایش توزیع نرمال:

import matplotlib.pyplot as plt import numpy as np Mean = 0.5 #mi-u STD = 0.1 # sigma x = np.random.normal(Mean, STD, 1000) x = plt.hist(x) plt.show()

کد فوق نمودار زیر را رسم خواهد کرد:

مثالی از ساده ترین نمودار هیستوگرام در پایتون
مثالی از ساده ترین نمودار هیستوگرام در پایتون


رسم چند نمودار در یک قاب

برای رسم چند نمودار در یک قاب از دستور subplot استفاده میکنیم. به مثال زیر توجه کنید:

import matplotlib.pyplot as plt import numpy as np x = np.arange(-5, 5, 0.01) y = np.sin(2 * np.pi * x) y2 = np.cos(2 * np.pi * x) axes1 = plt.subplot2grid((4, 4), (0, 0), rowspan = 2) axes1.set_facecolor('y') axes1.plot(x, y) axes2 = plt.subplot2grid((4, 4), (2, 3)) axes2.set_facecolor('y') axes2.plot(x, y) axes3 = plt.subplot2grid((4, 4), (3, 0), colspan = 3) axes3.set_facecolor('y') axes3.plot(x, y) plt.subplot2grid((4, 4), (0, 1), colspan = 2) plt.subplot2grid((4, 4), (0, 3)) plt.subplot2grid((4, 4), (1, 1)) plt.subplot2grid((4, 4), (1, 2)) plt.subplot2grid((4, 4), (1, 3)) plt.subplot2grid((4, 4), (2, 0)) plt.subplot2grid((4, 4), (2, 1), colspan = 2) plt.subplot2grid((4, 4), (3, 3)) plt.show()

نتیجه اجرای کد فوق در زیر نشان داده شده است:

 رسم چند نمودار با دستور subplot
رسم چند نمودار با دستور subplot


مثال های فوق از دوره دوره آموزش رسم نمودار در پایتون استخراج شده است. برای تهیه این دوره آموزشی میتوانید به فروشگاه سایت مراجعه بفرمائید.


مشخصات و ویژگی دوره کتابخانه Matplotlib:

  • طول دوره: ۶ ساعت و ۱۲ دقیقه
  • حجم دوره: حدودا ۱.۵ گیگ
  • تعداد ویدیو: ۳۱ ویدیو
  • آموزش بصورت عملی و با ارائه مثال های مختلف
  • تمام کدهای دوره در پک دانلود موجود است

محتوا و سرفصل های دوره:

  1. آموزش نصب نرم افزار و کتابخانه ها (Python3, PyCharm, Matplotlib, Numpy)
  2. مختصری در مورد کتابخانه numpy
  3. رسم نمودارهای خطی و تنظیمات پیشرفته + حل مثال
  4. آموزش subplot و figure به منظور رسم چندین نمودار در یک یا چند پنجره
  5. رسم نمودارهای میله ای و تنظیمات پیشرفته + حل مثال
  6. رسم نمودارهای هیستوگرام و هیت مپ (هیستوگرام دو بعدی)  و تنظیمات پیشرفته + حل مثال
  7. رسم نمودارهای پراکندگی و تنظیمات پیشرفته + حل مثال
  8. رسم نمودارهای مدور (گرد) و دونات چارت ها و تنظیمات پیشرفته + حل مثال
  9. رسم نمودارهای ۳ بعدی + حل مثال
  10. رسم چند نمودار در پایتون


این ها ساده ترین حالت برای رسم نمودار در پایتون بود و تا حدود زیادی کار شمارو راه میندازه. اگر نیاز به افزودن جزئیات بیشتر به نمودارهای خودتون رو دارید، میتونید دوره دوره آموزش رسم نمودار در پایتون رو تهیه کنید.

رسم نمودارکتابخانه Matplotlibمصورسازی دادهنمودار
یه آدم معمولی
شاید از این پست‌ها خوشتان بیاید