Введение
В этом практическом занятии вы узнаете, как установить альтернативный курсор на холсте с графиком с использованием Matplotlib. Альтернативный курсор может быть любым из доступных курсоров в инструментах Matplotlib backend.
Советы по работе с ВМ
После завершения запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы столкнетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импортируем необходимые библиотеки
Сначала нам нужно импортировать необходимые библиотеки. Мы будем использовать matplotlib.pyplot и matplotlib.backend_tools.
import matplotlib.pyplot as plt
from matplotlib.backend_tools import Cursors
Создаем фигуру и назначаем альтернативные курсоры
Далее мы создаем фигуру и назначаем альтернативные курсоры для каждого подграфика с использованием цикла. Также добавляем текст в каждый подграфик, чтобы указать используемый курсор.
fig, axs = plt.subplots(len(Cursors), figsize=(6, len(Cursors) + 0.5), gridspec_kw={'hspace': 0})
fig.suptitle('Hover over an Axes to see alternate Cursors')
for cursor, ax in zip(Cursors, axs):
ax.cursor_to_use = cursor
ax.text(0.5, 0.5, cursor.name,
horizontalalignment='center', verticalalignment='center')
ax.set(xticks=[], yticks=[])
Настраиваем курсор при наведении
Нам нужно установить курсор на альтернативный, когда пользователь наведет указатель мыши на подграфик. Мы достигаем этого с использованием события motion_notify_event и функции set_cursor().
def hover(event):
if fig.canvas.widgetlock.locked():
## Don't do anything if the zoom/pan tools have been enabled.
return
fig.canvas.set_cursor(
event.inaxes.cursor_to_use if event.inaxes else Cursors.POINTER)
fig.canvas.mpl_connect('motion_notify_event', hover)
Отображаем фигуру
Наконец, мы отображаем фигуру с использованием функции show().
plt.show()
Резюме
В этом практическом занятии мы научились настраивать альтернативный курсор на полотне фигуры с использованием Matplotlib. Мы создали фигуру и установили альтернативные курсоры для каждого подграфика, а затем установили курсор на альтернативный, когда пользователь наведет указатель мыши на подграфик. Затем мы отобразили фигуру.