Регистрация scroll_event в matplotlib

#python #matplotlib

#питон #matplotlib

Вопрос:

Мне нужно зарегистрировать события щелчка и прокрутки в окне mpl. Я разработал свой код в записной книжке Jupyter, и у меня возникли проблемы с запуском его просто как скрипта на python. Я могу немедленно зарегистрировать события щелчка и прокрутки в записной книжке с помощью %matplolib notebook волшебной команды. Это желаемое поведение. При запуске файла .py из командной строки с tkagg PyQt5 помощью, и т.д., события регистрируются только после выбора кнопки перемещения или масштабирования, с которой я могу жить. После выбора кнопки «Переместить» события щелчка регистрируются немедленно. Однако события прокрутки не запускаются до тех пор, пока не произойдет событие щелчка. Мне нужно, чтобы событие прокрутки сработало немедленно. Мысли?

 import matplotlib import numpy as np matplotlib.use('TkAgg') # %matplotlib notebook  #works in jupyter notebook import matplotlib.pyplot as plt print(matplotlib.get_backend())  def on_click(event):  if ax1 == event.inaxes and event.button == 1:  ax1.set_title(event.xdata)  def on_scroll(event):  ax2.set_title(event.button)  fig = plt.figure() ax1 = fig.add_subplot(121)#left ax2 = fig.add_subplot(122)#right  plt.connect('button_press_event',on_click) plt.connect('scroll_event',on_scroll)  plt.show()  

Комментарии:

1. Удар? могу ли я что-нибудь добавить к своему вопросу?