Как я могу изменить мою диаграмму или добавить элементы, запускаемые pick_event в python, используя matplotlib? - PullRequest
0 голосов
/ 21 декабря 2018

Я пытаюсь использовать matplotlib для построения некоторых данных, а затем использую pick_event, чтобы выбрать точку данных.Это уже работает с кодом ниже.Теперь я хочу добавить, например, axvline в позиции выбранной точки данных.Возможно ли это?

Приведенный ниже код работает, как я ожидаю, но строка "ax.axvline (xdata [idx [0]]", кажется, игнорируется. Может быть, сюжет нужно обновить или что-то в этом роде?

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.set_title('My first picker')
ax.plot([10, 20, 30],[100, 400, 900], 'o', picker=5)

def onpick(event):
    thismarker = event.artist
    xdata = thismarker.get_xdata()
    idx = event.ind
    ax.axvline(xdata[idx[0]])
    print(xdata[idx[0]])
    print('You picked point: ' + str(idx[0]))

fig.canvas.mpl_connect('pick_event', onpick)

Ожидаемый результат: Появляется вертикальная линия в точке данных, по которой выполняется щелчок. Фактический результат: Событие выбора работает, поскольку оно печатает позицию X и номер выбранной точки данных, но вертикальной линии не появляется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...