Matplotlib — це кросплатформна бібліотека візуалізації даних і побудови діаграм для Python.
Щоб установити бібліотеку для роботи в IDLE PyCharm:
1) відкрийте вкладку Terminal;
2) в командному рядку наберіть сполучення клавіш Ctrl + Z, щоб вийти з віртуального оточення;
3) у наступному рядку наберіть команду pip install matplotlib.
1) відкрийте вкладку Terminal;
2) в командному рядку наберіть сполучення клавіш Ctrl + Z, щоб вийти з віртуального оточення;
3) у наступному рядку наберіть команду pip install matplotlib.
import matplotlib.pyplot as plt
Для побудови гістограм призначена функція bar():
plt.bar(<категорії>, <значення>)
Побудуємо стовпчикову діаграму для відображення елементів списку data (рис. 1).
import matplotlib.pyplot as plt
data = [5., 25., 50., 20.]
plt.bar(range(len(data)), data)
plt.show()
import matplotlib.pyplot as plt
data = [5., 25., 50., 20.]
plt.bar(range(len(data)), data)
plt.show()
Для виведення зображення на екран використовується функція plt.show(). Діаграму побудовано в окремому графічному вікні plotting window, яке має заголовок Figure#.
Функції plt.bar() передано список значень data, і matplotlib пов’язує цей список із послідовністю range(len(data)).
Рис.1
Для підвищення наочності діаграми можна налаштувати такі властивості, як title (заголовок діаграми), xlabel, ylabel (підписи осей), grid (координатна сітка). Зазвичай графік являє собою пару значень (x, y), тому слід задавати два масиви: у першому будуть значення для осі x, у другому — для y.
Приклад:
Побудуємо гістограму показника успішності учнів 9А класу з чотирьох предметів, значення якого занесені до списку ndu (рис.2).
Рис.2
import matplotlib.pyplot as plt
plt.title('Успішність учнів 9А класу')
ndu = [9.8, 8.5, 9.1, 7.4] # список значень
subject = ['Інф.', 'Алг.', 'Геом.', 'Фіз.'] # список категорій
plt.xlabel('Предмети', color = 'gray')
plt.ylabel('Середній бал', color = 'gray')
plt.grid(True)
plt.bar(subject, ndu)
plt.show()
Для побудови графіків призначена функція plot():
plt.plot(<масив абсцис>, <масив ординат>)
Приклад:
Побудуємо графік зміни значень середньодобової температури повітря за тиждень, які зберігаються в списку а, задавши синій колір лінії (рис. 3).
Рис.3
import matplotlib.pyplot as plt
plt.title('Середньодобова температура за тиждень')
a = [14, 12, 15, 12, 9, 10, 7]
day = ['Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Нд']
plt.xlabel('Дні тижня', color = 'gray')
plt.ylabel('Середньодобова температура', color = 'gray')
plt.grid(True)
plt.plot(day, a, 'blue')
plt.show()
plt.title('Середньодобова температура за тиждень')
a = [14, 12, 15, 12, 9, 10, 7]
day = ['Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб', 'Нд']
plt.xlabel('Дні тижня', color = 'gray')
plt.ylabel('Середньодобова температура', color = 'gray')
plt.grid(True)
plt.plot(day, a, 'blue')
plt.show()
Для побудови кругової діаграми призначена функція pie():
plt.pie(<масив значень> [, labels = <масив підписів даних>, autopct = "%.1f%%"])
У найпростішому варіанті можна задати тільки масив значень. Кількість елементів у масиві визначає кількість секторів, а величина значень визначає їх площу (рис.4):
plt.pie([40,10])
Рис.4
Приклад:
Побудуємо кругову діаграму прибутку підприємства за 4 квартали року (рис. 5):
Рис.5
import matplotlib.pyplot as plt
plt.title('Прибуток підприємства, тис. грн')
a = [100, 40, 80, 70]
kv = ['I квартал', 'II квартал', 'III квартал', 'IV квартал']
plt.pie(a, labels = kv, autopct = "%.1f%%")
plt.show()
plt.title('Прибуток підприємства, тис. грн')
a = [100, 40, 80, 70]
kv = ['I квартал', 'II квартал', 'III квартал', 'IV квартал']
plt.pie(a, labels = kv, autopct = "%.1f%%")
plt.show()
Джерела:
Інформатика : підруч. для 9 кл. закл. загал. серед. освіти / [О. О. Бондаренко, В. В. Ластовецький, О. П. Пилипчук, Є. А. Шестопалов]. — Харків : Вид-во «Ранок», 2022.