Слайдер Matplotlib для перемещения по вертикальной оси - PullRequest
0 голосов
/ 14 ноября 2018

Я хотел бы сделать ползунок для перемещения по вертикальной оси. Я могу создать вертикальную ось с:

plt.axvline(0.5, color = 'green')

Мой код основан на примере slider_demo.py matplotlip .

В этом коде для обновления графика они вызывают:

l.set_ydata(amp*np.sin(2*np.pi*freq*t))

, где

l, = plt.plot(t, s, lw=2, color='red')

Как я могу изменить это, чтобы обновить вертикальную ось, связанную с ползунком? (Какие аргументы я должен использовать, чтобы дать set_data для создания vertical_axis или другую функцию для обновления этой оси?)

Edit:

Чтобы быть более конкретным, делаем:

plt.axvline(slider.val, color = 'green')

в функции обновления ползунка создает новую вертикальную ось при перемещении ползунка, но не удаляет ранее существующую. Если я сделаю

v = plt.axvline(0.5, color = 'green')

и в функции обновления

v.remove()
v = plt.axvline(slider.val, color = 'green')

это не работает, топоры остаются на том же месте. Если я делаю в функции обновления:

v.remove()
plt.axvline(slider.val, color = 'green')

Это работает при первом перемещении слайдера, но не после этого.

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