کتابخانه Matplotlib قدرت زیادی در بصری کردن دادهها دارد. به طوری که انواع نمودارهای تک بعدی و چند بعدی را میتوان با آن مجسم کرد. این کتابخانه در حوزههای مختلفی از جمله تحقیقات علمی، آنالیز دادهها، گزارشات تصویری و… کاربرد دارد. در ادامه با آرایهها، متدها، نحوه نصب و آموزش مقدماتی کتابخانه Matplotlib آشنا خواهیم شد:
فهرست مطالب
- کتابخانه Matplotlib چیست؟
- منظور از آرایه در کتابخانه Matplotlib چیست؟
- متدهای Matplotlib چیست؟
- ویجت های Matplotlib چیست؟
- آموزش کتابخانه Matplotlib در پایتون
- استفاده از سرویس ژوپیتر لب ابر فردوسی
کتابخانه Matplotlib چیست؟
Matplotlib یک کتابخانه جامع گرافیکی برای ایجاد تجسمهای ثابت، انیمیشنی و تعاملی در پایتون است. کاربرد اصلی این کتابخانه، تولید طرح و نمودار از دادهها است. این ویژگی، آن را تبدیل به یک ابزار مهم برای تجزیه و تحلیل و تجسم دادهها کرده است. با کمک آن میتوان به ماهیت و کیفیت دادهها پی برد. در ادامه ویژگیهای Matplotlib آمده است:
تطبیق پذیری:
Matplotlib از طیف گستردهای از نمودارهای دوبعدی و چندبعدی از قبیل خطی، پراکنده، میلهای، هیستوگرام، دایرهای و… پشتیبانی میکند.
سفارشی سازی:
با Matplotlib تقریباً تمام جنبههای یک طرح از قبیل سبک خط، رنگ، فونت، برچسب و… را میتوان سفارشی سازی کرد.
یکپارچه سازی:
Matplotlib به خوبی با سایر کتابخانههای پایتون مانند NumPy، Pandas و SciPy ادغام میشود تا گردش کاری یکپارچه برای تجزیه و تحلیل و تجسم دادهها ایجاد شود.
نمودارهای تعاملی:
Matplotlib از نمودارهای تعاملی پشتیبانی میکند که میتوانند در برنامهها یا نوتبوکهای Jupyter جاسازی شوند تا امکان کاوش پویا در دادهها را فراهم کنند.
سازگاری:
این کتابخانه در پلتفرمهای مختلف کار میکند و میتواند نمودارها را در قالبهای فایل مختلف مانند PNG، PDF، SVG و EPS ذخیره کند.
وجود matplotlib.pyplot:
مجموعهای از دستورات و توابع است که باعث میشود matplotlib همانند زبان برنامهنویسی MATLAB عمل کند. این توابع میتواند تغییراتی در شکل نمودار ایجاد کند و در صورت لزوم، شکل قبلی آن را حفظ کند تا قابل مقایسه باشند.
منظور از آرایه در کتابخانه Matplotlib چیست؟
یک لیست از اعداد و یا دادههای مشابه، که در یک ساختار قرار گرفتهاند، آرایه نام دارد. در Matplotlib، وجود آرایهها برای ترسیم دادهها مهم است.
به طور معمول، این آرایهها حاوی دادههای عددی هستند که قرار است تجسمسازی شوند. وجود کتابخانههای NumPy یا Pandas برای مدیریت کارآمد مجموعه دادههای عددی بزرگ الزامی است.
متدهای Matplotlib چیست؟
Method یک دستورالعمل کلی، از پیش تعریف شده و برنامهریزی شده است که با اجرای آن عملیات جدیدی به محیط ژوپیتر افزوده میگردد. در Matplotlib، متدها توابعی هستند که عملیاتهایی مربوط به ایجاد، سفارشی سازی و مدیریت نمودارها را انجام میدهند.
Matplotlib طیف گستردهای از متدها را برای ایجاد و سفارشی کردن نمودارها ارائه میدهد. این متدها معمولاً بر روی اشیایی مانند plt، Figure یا Axes فراخوانی میشوند. در ادامه برخی از متداولترین روشهای مورد استفاده در ماژول pyplot آمده است که معمولاً به صورت plt وارد میشود:
ایجاد طرح خط:
plt.plot(x, y, label='Label', linestyle='-', color='b')
ایجاد نمودار پراکندگی:
plt.scatter(x, y, c='r', marker='o')
ایجاد طرح نوار:
plt.bar(categories, values, color='g')
ایجاد هیستوگرام:
plt.hist(data, bins=30, color='m')
ایجاد نمودار دایرهای:
plt.pie(sizes, labels=labels, autopct='%1.1f%%')
ویجت های Matplotlib چیست؟
Matplotlib ابزارک یا ویجتهایی را فراهم میکند که کاوش و دستکاری دادههای تعاملی را مستقیماً در نمودارها امکان پذیر میکند. این ویجتها بخشی از ماژول matplotlib.widgets هستند. در اینجا مثالی از ویجت پرکاربرد دکمه یا Button آورده شده است:
آموزش کتابخانه Matplotlib در پایتون
برای نصب کتابخانه Matplotlib در پایتون، میتوانید از pip یا conda استفاده کنید. در ادامه از پیپ استفاده کردهایم:
pip install matplotlib
در ادامه پس از فراخوانی کتابخانه Matplotlib در پایتون، روش ایجاد مقدماتی Basic Plotting را آوردهایم:
در ادامه آموزش مقدماتی نحو ترکیب آرایههای کتابخانه NumPy با Matplotlib آمده است:
استفاده از سرویس ژوپیتر لب ابر فردوسی
استفاده از ژوپیتر لب به عنوان نسل بعد ژوپیتر نوت بوک، در ابر فردوسی فراهم است. در ادامه به معرفی مزایای آن میپردازیم:
۱- عدم وجود محدودیت زمانی و مکانی
2- قیمت مقرون بهصرفه و پرداخت با روش PAY AS YOU GO
3- امکان انتخاب میزان منابع پردازشی از قبیل CPU، RAM، هارد
4- امکان انتخاب نوع کارتهای گرافیک قدرتمند در ابر فردوسی:
(RTX 2080i (11GB
RTX 3090 (24G)
(32GB) Tesla v100s
Tesla a100 (40GB
5- امکان انتخاب کتابخانهها و افزونه های ژوپیتر لب در ابر فردوسی:
Tensor flow
Pytorch
Pure python
جهت تست رایگان سرویس ژوپیتر لب در ابر فردوسی کلیک نمایید.