3 полезные возможности Matplotlib, которые украсят ваш график
В этой статье уделим внимание важным возможностям базовой библиотеки для работы с графиками в Python, о которых незаслуженно забывают.
Вертикальные и горизонтальные линии
Так, зачастую основные элементы на картинках удобно дополнять некоторыми базовыми ориентирами, в числе которых линии, обозначающие, например, средние значения, результаты случайных угадываний.. Этот функционал можно реализовать напрямую с помощью plot, передав ей координаты нужных точек, либо использовать специальные функции vlines и hlines для нанесения вертикальных и горизонтальных прямых:
import matplotlib.pyplot as plt import seaborn as sns sns.set()
fig, ax = plt.subplots(1, 2, figsize=(5, 5)) ax[0].plot([-1, 1], [1, 1]) ax[1].hlines(1, -1, 1)
fig, ax = plt.subplots(1, 2, figsize=(5, 5)) ax[0].plot([1, 1], [-1, 1]) ax[1].vlines(1, -1, 1)
hlines достаточно задать постоянное значение по y, а также начальный и конечный x, а vlines - постоянный x, а также начальный и конечный y. С помощью данных функций можно нанести на график сразу несколько прямых - для этого в первом параметре следует передать список постоянных по y или x:
Простейшие фигуры
С помощью Matplotlib можно быстро нарисовать стандартные фигуры, которые называются патчами (часть из них, например Rectangle и Circle, располагается в подмодуле pyplot, а весь набор – в matplotlib.patches). Для добавления фигуры к рисунку следует вызвать метод add_patch. Рассмотрим процесс добавления прямоугольника (объект Rectangle, задается через координаты левой нижней точки, а также ширины и высоты) и круга (Circle, определяется координатами центра и радиусом):
fig, ax = plt.subplots(1, 1, figsize=(5, 5)) ax.add_patch(plt.Rectangle((-1,-1),2,2, alpha=0.3)) ax.add_patch(plt.Circle((0,0),1, alpha=0.6)) ax.set_xlim(-1.5,1.5) ax.set_ylim(-1.5,1.5)