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()