Appearance
Matplotlib
Маtplotlib - это одна из наиболее популярных библиотек для создания графиков и диаграмм в Python. Он предназначен для создания высококачественных 2D и 3D графиков, а также для построения различных типов диаграмм, включая графы линии, графики точек, столбчатые графики, круговые диаграммы, и так далее.
Основные функции Matplotlib
- Создание графиков:
plt.plot()
: создание графика линийplt.scatter()
: создание графика точекplt.hist()
: создание гистограммыplt.bar()
: создание столбчатых графиковplt.pie()
: создание круговых диаграмм
- Настройка графиков:
plt.title()
: установка названия графикаplt.xlabel()
: установка названия оси Xplt.ylabel()
: установка названия оси Yplt.legend()
: добавление легенды
- Работа с цветами и стилями:
plt.style.use()
: установка стиля графикаplt.rcParams
: настройка цветов и других параметров графика
- Работа с графиками:
plt.show()
: отображение графикаplt.savefig()
: сохранение графика в файл в различных форматах (PNG
,JPG
,SVG
,PDF
и др.).plt.close()
: закрытие графика
Применение Matplotlib
- Анализ данных:
- создание графиков для анализа данных
- настройка графиков для улучшения легко читаемости данных
- Презентации и отчеты:
- создание графиков для презентаций и отчетов
- настройка графиков для улучшения их визуальной привлекательности
- Навыки программирования:
- создание графиков в программе для изучения алгоритмов и методов
- настройка графиков для улучшения понимания данных
Построение основных диаграмм
Создание линейной диаграммы
python
import matplotlib.pyplot as plt
# Данные
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# Построение графика
plt.plot(x, y)
# Добавление заголовков и подписей
plt.title("Линейный график")
plt.xlabel("Ось X")
plt.ylabel("Ось Y")
# Показ графика
plt.show()
plt.savefig('img/diagram_plot.svg', format='svg')
Результат запуска кода:
Создание точечной диаграммы
python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
plt.scatter(x, y)
plt.title('График точек')
plt.xlabel('X')
plt.ylabel('Y')
plt.savefig('img/diagram_scatter.svg', format='svg')
plt.show()
Результат запуска кода:
Создание гистограммы
python
import matplotlib.pyplot as plt
data = [1, 2, 2, 3, 3, 3, 4, 4, 5]
plt.hist(data, bins=5, color='blue', edgecolor='black')
plt.title("Гистограмма")
plt.xlabel("Значения")
plt.ylabel("Частота")
plt.savefig('img/diagram_hist.svg', format='svg')
plt.show()
Результат запуска кода:
Создание столбчатой диаграммы
python
import matplotlib.pyplot as plt
labels = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
values = [10, 15, 7, 12, 20]
plt.bar(labels, values)
plt.title('Столбчатый график')
plt.xlabel('Месяц')
plt.ylabel('Значение')
plt.savefig('img/diagram_bar.svg', format='svg')
plt.show()
Результат запуска кода:
Создание круговой диаграммы
python
import matplotlib.pyplot as plt
labels = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
values = [10, 15, 7, 12, 20]
plt.pie(values, labels=labels)
plt.title('Круговая диаграмма')
plt.savefig('img/diagram_pie.svg', format='svg')
plt.show()
Результат запуска кода:
Построение нескольких графиков
python
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
plt.plot(x, y1, label="sin(x)", color="blue")
plt.plot(x, y2, label="cos(x)", color="green")
plt.title("Несколько графиков")
plt.xlabel("Ось X")
plt.ylabel("Ось Y")
plt.legend()
plt.savefig('img/diagrams_plot_plot.svg', format='svg')
plt.show()
Результат запуска кода:
Настройка графика
Matplotlib позволяет настроить практически каждый аспект графика, включая цвета, шрифты, размеры и многое другое. Например, можно изменить цвет и стиль линии в линейном графике, используя различные опции в функции plot()
.
python
plt.plot(x, y, color='red', linestyle='--', marker='o')
python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
plt.style.use('ggplot') # Применение стиля ggplot
plt.plot(x, y)
plt.title('График линии')
plt.xlabel('X')
plt.ylabel('Y')
plt.grid(True) # добавление сетки
plt.legend(['Линия']) # добавление легенды
plt.savefig('img/diagram_plot_style.svg', format='svg')
plt.show()
Результат запуска кода:
Размещение нескольких графиков (subplot)
Одним из ключевых преимуществ matplotlib.pyplot
является его способность создавать сложные, многоэлементные графики. Например, можно создать график, содержащий несколько графиков, используя функцию subplots()
.
python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [1, 4, 9, 16, 25]
y2 = [1, 8, 27, 64, 125]
plt.subplot(2, 1, 1) # Первый график (2 строки, 1 столбец, 1-й график)
plt.plot(x, y1, 'r-')
plt.title("График 1")
plt.subplot(2, 1, 2) # Второй график
plt.plot(x, y2, 'b-')
plt.title("График 2")
plt.tight_layout() # Устранение наложения
plt.savefig('img/diagrams_top_bottom.svg', format='svg')
plt.show()
Результат запуска кода:
python
fig, axs = plt.subplots(2, 2)
axs[0, 0].plot(x, y)
axs[0, 1].scatter(x, y)
axs[1, 0].bar(x, y)
axs[1, 1].hist(data, bins=30)
plt.show()