Вступ до Matplotlib з використанням Python для початківців

Вихідний вузол: 1172034

Ця стаття була опублікована як частина Блогатон науки про дані

Якщо ви зацікавлені в аналітиці даних або візуалізації даних, ви знаходитесь у правильному місці, щоб почати. Отже, почнемо з простого вступу про те, Візуалізація даних це процес перетворення чисел, тексту або великих наборів даних у різні типи графіків, таких як гістограми, карти, стовпчасті діаграми, кругові діаграми тощо. Для візуалізації нам потрібні деякі інструменти чи технології. Матплотліб є однією з найпотужніших бібліотек на Python для візуалізації даних. У цій статті я поясню вам, як можна візуалізувати різні типи графіків і діаграм, щоб дуже легко пояснити комусь свої дані.

У цій статті ми будемо обговорювати наступне:

  1. установка
  2. Важливі типи сюжетів

Почнемо з невеликого вступу до Матплотліб. Матплотліб це базова бібліотека для візуалізації або побудови графіків мови програмування Python. Матплотліб є потужним інструментом для виконання різноманітних завдань. Він здатний створювати різні типи звітів візуалізації, наприклад лінійні діаграми, точкові діаграми, гістограми, стовпчасті діаграми, секторні діаграми, прямокутні діаграми та багато інших різних графіків. Ця бібліотека також підтримує тривимірне малювання.

Встановлення Matplotlib

Давайте перевіримо, як налаштувати Матплотліб в Google-Colab. Блокноти Colab схожі на блокноти Jupyter, за винятком того, що вони працюють у хмарі. Він також пов’язаний із нашим Диском Google, тому набагато легше отримати доступ до наших блокнотів Colab у будь-який час, будь-де та в будь-якій системі. Можна встановлювати Матплотліб за допомогою PIP команда

!pip встановити matplotlib
Використання pip для встановлення Matplotlib
Джерело: Місцеве

Щоб перевірити інсталяцію, вам доведеться написати такий фрагмент коду:

імпорт matplotlib print(matplotlib.__version__)
Друк версії Matplotlib
Джерело: Місцеве

Важливі типи графіків у Matplotlib

Тепер ви знаєте, що таке Матплотліб і як ви можете встановити його у своїй системі, давайте обговоримо різні види графіків, які ви можете намалювати, щоб проаналізувати свої дані або представити свої висновки.

Підділянки-

Subplots() – це a Матплотліб функція, яка використовується для відображення кількох графіків на одному малюнку. Він приймає різні аргументи, такі як кількість рядків, стовпців або sharex, вісь share.

код:

# Спочатку створіть сітку графіків
fig, ax = plt.subplots(2,2,figsize=(10,6)) #це створить підсхеми з 2 рядками та 2 стовпцями 
#і другий аргумент — це розмір ділянки 
# Давайте зобразимо всі фігури 
ax[0][0].plot(x1, np.sin(x1), 'g') #row=0,col=0 
ax[0][1].plot(x1, np.cos(x1), 'y') #рядок=0,стовпець=1 ax[1][0].plot(x1, np.sin(x1), 'b') #row=1,col=0 ax[1][1].plot(x1, np.cos(x1), 'червоний') #row=1,col=1 plt.tight_layout() 
#покажи сюжети
plt.show ()
Підсхеми в matplotlib
Джерело: Місцеве

Тепер давайте перевіримо різні категорії ділянок Матплотліб забезпечує.

  • Лінійний сюжет
  • Гістограма
  • Гістограма
  • Діаграма розкиду
  • Кругові діаграми
  • Boxplot

Більшу частину часу нам доводиться працювати з Pyplot як інтерфейсом Матплотліб. Отже, ми імпортуємо Pyplot так:

import matplotlib.pyplot

Щоб полегшити роботу, ми можемо імпортувати це так:

імпортувати matplotlib.pyplot як plt 

Лінійні ділянки-

Лінійний графік використовується, щоб побачити співвідношення між віссю x і y.

Функція plot() у Матплотліб Модуль Pyplot бібліотеки використовується для створення двовимірної шестикутної діаграми координат x і y. plot() прийматиме різні аргументи, наприклад plot(x, y, scalex, scaley, data, **kwargs).

x, y це координати горизонтальної та вертикальної осі, де значення x є необов’язковими, а значенням за замовчуванням є діапазон (len(y)).

чешуйка, чешуйка параметри використовуються для автоматичного масштабування осі x або осі y, а його значення за замовчуванням — true.

** кварги використовується для визначення таких властивостей, як мітка лінії, ширина лінії, маркер, колір тощо.

код:

#цей рядок створить масив чисел від 1 до 10 довжиною 100 
#np.linspace(satrt,stop,num) 
x1 = np.linspace(0, 10, 100) #лінійний графік 
plt.plot(x1, np.sin(x1), '-',color='orange') 
plt.plot(x1, np.cos(x1), '--',color='b')
#назвіть осі x і y 
plt.xlabel('мітка x')
plt.ylabel('y label') 
#також дайте назву сюжету 
plt.title("Назва") 
plt.show () 
Лінійний графік у matplotlib
Джерело: Місцеве

Гістограма-

Найпоширенішим графіком для відображення частотних розподілів є гістограма. Щоб створити гістограму, першим кроком є ​​створення діапазону діапазонів, потім розподілення всього діапазону значень на ряди інтервалів і підрахунок значення, яке потрапить у заданий інтервал. ми можемо використовувати plt.hist() функція для побудови гістограм, які прийматимуть різні аргументи, такі як дані, контейнери, колір тощо.

x: x-координата або послідовність масиву

контейнери: ціле значення кількості бінів, які потрібні на графіку

діапазон: нижній і верхній діапазон бункерів

щільність: необов'язковий параметр, який містить логічні значення

тип історії: необов’язковий параметр, який використовується для створення різних типів гістограм, як-от: смужка, смужка зі стосом, крок, заповнена покрокова; типовим є смуга

код:

#витягнути випадкові вибірки з випадкових розподілів.
x = np.random.normal(170, 10, 250)
#побудувати гістограми
plt.hist(x) plt.show()
Гістограма в matplotlib
Джерело: Місцеве

Барна ділянка-

Головним чином штрих-діаграма використовується для відображення зв’язку між числовими та категоріальними значеннями. На гістограмі ми маємо одну вісь, що представляє певну категорію стовпців, а іншу вісь, яка представляє значення або кількість певної категорії. Гістограми будуються як вертикально, так і горизонтально за допомогою такого рядка коду:

plt.bar(x,висота,ширина,низ,вирівнювання)

x: що представляє координати осі x

висота: висота брусків

ширина: ширина брусків. Його значення за замовчуванням становить 0.8

внизу: Це необов'язково. Це y-координата смуги, її значення за замовчуванням — «Немає».

вирівняти: центр, край його значенням за умовчанням є центр

код:

#define array data= [5. , 25. , 50. , 20.]
plt.bar(діапазон(len(дані)), дані,колір='c')
plt.show()
Barplot у Matplotlib
Джерело: Місцеве

Діаграма розкиду-

Точкові діаграми використовуються для відображення зв’язків між змінними та використання крапок для побудови або вони використовуються для відображення зв’язку між двома числовими змінними.

Команда scatter() метод у Матплотліб бібліотека використовується для побудови.

код:

#створити координати осей x і y
x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
plt.scatter(x, y)
plt.legend()
plt.show()
Діаграма розсіювання в Matplotlib
Джерело: Місцеве

Кругова діаграма-

Кругова діаграма (або кругова діаграма) використовується для відображення відсотка від цілого. Тому його використовують, коли ми хочемо порівняти окремі категорії з цілим. Пиріг() прийматиме різні параметри, такі як:

x: Послідовність масиву

етикетки: Список рядків, які будуть іменем кожного фрагмента кругової діаграми

Autopct: Він використовується для позначення клинів числовими значеннями. Мітки будуть розміщені всередині клинів. Його формат %1.2f%

код:

#визначте розмір фігури
plt.figure(figsize=(7,7))
х = [25,30,45,10]
#мітки кругової діаграми
мітки = ['A','B','C','D']
plt.pie(x, labels=labels)
plt.show()
Секторна діаграма в matplotlib
Джерело: Місцеве

Box Plot-

Коробчатий графік використовується для відображення підсумку всього набору даних або всіх числових значень у наборі даних. Підсумок містить мінімум, перший квартиль, медіану, третій квартиль і максимум. Крім того, медіана присутня між першим і третім квартилем. Тут вісь x містить значення даних, а координати y показують розподіл частот.

Нижче наведено параметри, які використовуються в коробкових діаграмах:

дані: Масив NumPy

верт: Він прийматиме логічні значення, тобто істина або хибність, для вертикального та горизонтального графіків за замовчуванням є істина

ширина: Це займе масив і набори ширини коробок, необов’язкові параметри

Patch_artist: Він використовується для заповнення полів кольором, його значення за замовчуванням — false

етикетки: Масив рядків, який використовується для встановлення міток набору даних

код:

#створіть випадкові значення за допомогою numpy
значення= np.random.normal(100, 20, 300)
#створення графіка за допомогою функції boxplot(), яка доступна в matplotlib
plt.boxplot(values,patch_artist=True,vert=True)
plt.show()
Boxplot у matplotlib
Джерело: Місцеве

Діаграма площ -

Діаграма площі або площа діаграми використовується для візуалізації кількісних даних у графічному вигляді, вона базується на лінійній діаграмі. fill_between() Функція використовується для побудови площинної діаграми.

Параметр:

x, y представляють координати x і y ділянки. Для цього знадобиться масив довжини n.

Інтерполювати є логічним значенням і є необов’язковим. Якщо вірно, інтерполюйте між двома лініями, щоб знайти точну точку перетину.

** кварги: альфа, колір, колір обличчя, колір краю, ширина лінії.

код:

import numpy as np import pandas as pd import matplotlib.pyplot as plt y = [2, 7, 14, 17, 20, 27, 30, 38, 25, 18, 6, 1]
#побудувати лінію заданих даних
plt.plot(np.arange(12),y, color="blue", alpha=0.6, linewidth=2) #decorate thw графік, додавши мітки plt.xlabel('Month', size=12) plt.ylabel ('Turnover(Cr.)', size=12) #set y axis start with zero plt.ylim(bottom=0)
plt.show()
Діаграма району
Джерело: Місцеве

Заповніть область на лінійному графіку за допомогою fill_between() для діаграми площ.

plt.fill_between(np.arange(12), turnover, color="teal", alpha=0.4)
Заповнення області на лінійному графіку за допомогою fill_between()
Джерело: Місцеве

слово хмара-

Wordcloud — це візуальне представлення текстових даних. Слова зазвичай поодинокі, і важливість кожного слова відображається розміром або кольором шрифту. The wordcloud() функція використовується для створення хмари слів у python.

Команда wordcloud() прийматиме різні аргументи, такі як:

ширина: встановіть ширину полотна .за замовчуванням 400

висота: встановити висоту полотна .за замовчуванням 400

max_words: дозволена кількість слів, значення за умовчанням 200.

Колір фону: фоновий колір для зображення хмари слів. За замовчуванням використовується чорний колір.

Після створення об’єкта хмари слів ви можете викликати функцію генерації, щоб створити хмару слів і передати текстові дані.

код:

#імпорт бібліотек
з wordcloud імпортувати WordCloud імпортувати matplotlib.pyplot як plt з PIL імпортувати зображення імпортувати numpy як np
#задати розмір фігури . plt.figure(figsize=(10,15)) #фіктивний текст.
text = '''Nulla laoreet bibendum purus, vitae sollicitudin sapien facilisis at.
 Donec erat diam, faucibus pulvinar eleifend vitae, vulputate quis ipsum.
 Maecenas luctus odio turpis, nec dignissim dolor aliquet id.
 Mauris eu semper risus, ut volutpat mi. Vivamus ut pellentesque sapien.
 Etiam fringilla tincidunt lectus sed interdum. Etiam vel dignissim erat.
 Curabitur placerat massa nisl, quis tristique ante mattis vitae.
 Ut volutpat augue non semper finibus. Nullam commodo dolor sit amet purus auctor mattis.
 Ut id nulla quis purus tempus porttitor. Ut venenatis sollicitudin est eget gravida.
 Duis imperdiet ut nisl cursus ultrices. Меценат dapibus eu odio id hendrerit.
 Quisque eu velit hendrerit, commodo magna euismod, luctus nunc.
 Proin vel augue cursus, placerat urna aliquet, consequat nisl.
 Duis vulputate turpis a faucibus porta. Etiam blandit tortor vitae dui vestibulum viverra.
 Phasellus at porta elit. Duis vel ligula consectetur, pulvinar nisl vel, lobortis ex.'''
wordcloud = WordCloud( margin=0,colormap='BuPu').generate(text) Функція #imshow() у модулі pyplot бібліотеки matplotlib використовується для відображення даних у вигляді зображення.
plt.imshow(wordcloud, interpolation='bilinear') plt.axis('off') plt.margins(x=0, y=0) plt.show()
слово хмара
Джерело: Місцеве

3-D графіки-

Тепер, коли ви побачили кілька простих графіків, настав час перевірити деякі складні, наприклад тривимірні графіки. Спочатку Matplotlib створювався для двовимірних графіків, але пізніше до нього були додані тривимірні графіки. Давайте перевіримо, як ви можете побудувати тривимірний графік у Matplotlib.

код:

з mpl_toolkits імпортуйте mplot3d
%matplotlib вбудований
імпортувати numpy як np
імпортувати matplotlib.pyplot як plt
fig = plt.figure() ax = plt.axes(projection='3d')

Наведений вище код використовується для створення тривимірних осей.

Тривимірний графік у Matplotlib
Джерело: Місцеве

Кожну діаграму, яку ми бачили під час двовимірного побудови через Matplotlib, можна також намалювати як тривимірну графіку. Наприклад, давайте перевіримо лінійний графік у тривимірній площині.

ax = plt.axes(projection='3d') # Дані для тривимірної лінії
zline = np.linspace(0, 15, 1000)
xline = np.sin(zline)
yline = np.cos(zline)
ax.plot3D(xline, yline, zline, 'gray') # Дані для тривимірних розсіяних точок
zdata = 15 * np.random.random(100)
xdata = np.sin(zdata) + 0.1 * np.random.randn(100)
ydata = np.cos(zdata) + 0.1 * np.random.randn(100)
ax.scatter3D(xdata, ydata, zdata, c=zdata, cmap='Зелені');
Тривимірна діаграма розсіювання
Джерело: Місцеве

всі інші типи графіків можна намалювати таким же чином. Одним із особливих графіків, який надає Matplotlib 3-D, є Contour Plot. Ви можете намалювати контурну діаграму за посиланням:

fig = plt.figure()
ax = plt.axes(projection='3d')
ax.plot_wireframe(X, Y, Z, колір='чорний')
ax.set_title('каркас');
Контурний графік у Matplotlib
Джерело: Місцеве

Щоб зрозуміти всі згадані типи сюжетів, ви можете звернутися до наступного: https://www.youtube.com/watch?v=yZTBMMdPOww

Висновок

У цій статті ми обговорили Матплотліб тобто базова бібліотека побудови графіків у Python і основна інформація про різні типи діаграм для статистичного аналізу, які зазвичай використовуються. Крім того, ми обговорили, як намалювати кілька графіків на одній фігурі за допомогою функції subplot.

Також тут ми обговорили, як налаштувати фігуру або як змінити її розмір, а також як прикрасити ділянки за допомогою різних аргументів. Оскільки тепер ви знаєте основи побудови графіків і діаграм, ви можете спробувати побудувати графіки різних наборів даних і математичних функцій.

Як професіонали з обробки даних (зокрема аналітики даних, спеціалісти з обробки даних, інженери ML, DL інженери) у певний момент усім їм потрібно візуалізувати дані та представити висновки, тож що було б кращим варіантом, а тепер, коли ви знаєте цю технологію, ви б трохи впевнений у галузі.

Дякуємо, що прочитали статтю, поділіться статтею, якщо вона вам була цікава!

Носії, показані в цій статті, не належать Analytics Vidhya і використовуються на розсуд автора.

Джерело: https://www.analyticsvidhya.com/blog/2021/10/introduction-to-matplotlib-using-python-for-beginners/

Часова мітка:

Більше від Аналітика Vidhya