У меня есть трехмерный график рассеяния, к которому подключено событие выбора.
canvas.mpl_connect("pick_event", lambda e: self.onpick(e, self.ax_cs, self.canvas_cs))
Если событие выбора запускается по щелчку правой кнопкой мыши, у меня появляется всплывающее меню. Когда я выбираю опцию, график увеличивается / уменьшается, как будто я все еще удерживаю правую кнопку мыши. Если я снова щелкну мышью в любом месте после (влево или вправо), масштабирование будет отменено. Как заставить matplotlib автоматически «отпустить» кнопку?
def onpick(self, e, ax, canvas):
''' Unrelated Code '''
if e.mouseevent.button == 3:
self.menu_cs.tk_popup(e.guiEvent.x_root + 50, e.guiEvent.y_root, 0)
Меню определено ранее:
self.menu_cs = tk.Menu(canvas.get_tk_widget(), tearoff=0)
self.menu_cs.add_command(label="Definitions")
menu_cs.add_command(label="Component Weights",
command=lambda:
self.var_weights(self.fm_vw,
var=self.varclick_cs,
clear=True))