Matplotlib не смог отследить событие выпуска кнопки - PullRequest
0 голосов
/ 20 мая 2019

Я пытаюсь создать перетаскиваемый линейный объект.Событие pick и событие уведомления о движении просто в порядке, но кажется, что есть проблема с событием release.Я могу щелкнуть линию и перетащить ее, но не могу ничего сделать, чтобы остановить перетаскивание.

Ниже приведен мой код для строки:

class drawable_lines:
    def __init__(self, ax, Y):
        self.ax = ax
        self.c = ax.get_figure().canvas
        self.y = Y

        self.line = ax.axhline(y=Y, picker=5)
        self.ax.add_line(self.line)
        self.c.draw_idle()
        self.sid = self.c.mpl_connect('pick_event', self.clickonline)

    def clickonline(self, event):
        if event.artist == self.line:
            self.follower = self.c.mpl_connect('motion_notify_event', self.followmouse)
            self.releaser = self.c.mpl_connect('button_release_event', self.release)

    def followmouse(self, event):
        self.line.set_ydata([event.ydata, event.ydata])
        self.c.draw_idle()

    def release(self, event):
        self.y = self.line.get_ydata()[0]
        self.c.mpl_disconnect(self.followmouse)
        self.c.mpl_disconnect(self.release)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...