Сегодня рассмотрим основные термины и понятия, касающиеся изображения
графика, с которыми вам необходимо будет познакомиться.
Далее мы будем использовать термин "график" для обозначения всего
изображения, которое формирует Matplotlib (см. рисунок под статьей), и линии,
построенной по заданному набору данных.
Корневым элементом, на котором Matplotlib строит изображение,
является фигура (Figure). Всё, что перечислено на рисунке — это
элементы фигуры. Рассмотрим её составляющие более подробно.
👉График
На рисунке ниже представлены два графика — линейный и точечный.
Matplotlib предоставляет огромное количество различных настроек,которыеможноиспользовать для того, чтобы придать графику требуемый вид: цвет, толщина, тип, стиль линии и многое другое.
👉Оси
Вторым по важности элементом фигуры являются оси. Для каждой оси
можно задать метку (подпись), основные (major) и дополнительные
(minor) тики, их подписи, размер, толщину и диапазоны.
👉Сетка и легенда
Сетка и легенда являются элементами фигуры, которые значительно
повышают информативность графика. Сетка может быть основной
(major) и дополнительной (minor). Каждому типу сетки можно задавать
цвет, толщину линии и тип. Для отображения сетки и легенды
используются соответствующие команды.
Ниже представлен код, с помощью которого был построен график,
изображённый на рисунке.
✅
import matplotlib.pyplot as pltfrom matplotlib.ticker import (MultipleLocator, FormatStrFormatter,AutoMinorLocator)import numpy as npx = np.linspace(0, 10, 10)y1 = 4*xy2 = [i**2 for i in x]fig, ax = plt.subplots(figsize=(8, 6))ax.set_title('Графики зависимостей: y1=4*x, y2=x^2', fontsize=16)ax.set_xlabel('x', fontsize=14)ax.set_ylabel('y1, y2', fontsize=14)ax.grid(which='major', linewidth=1.2)ax.grid(which='minor', linestyle='--', color='gray', linewidth=0.5)ax.scatter(x, y1, c='red', label='y1 = 4*x')ax.plot(x, y2, label='y2 = x^2')ax.legend()ax.xaxis.set_minor_locator(AutoMinorLocator())ax.yaxis.set_minor_locator(AutoMinorLocator())ax.tick_params(which='major', length=10, width=2)ax.tick_params(which='minor', length=5, width=1)plt.show()