我正在尝试处理一些事件,以便将嵌入式子图的用户交互执行到Tkinter框架中。就像在这个example
中一样使用“key_press_event”和“button_press_event”可以正常工作,但不适用于“pick_event”。
我在链接中修改了该示例,只需在mpl_connect
调用后添加以下代码:
def on_button_press(event):
print('you pressed mouse button')
canvas.mpl_connect('button_press_event', on_button_press)
def on_pick(event):
print('you picked:',event.artist)
canvas.mpl_connect('pick_event', on_pick)
为什么“pick_event”无法用于嵌入式图形?如何让它发挥作用?
我的配置详细说明:
提前致谢!
答案 0 :(得分:7)
好吧,我解决了......
大多数事件我们只需要使用mpl_connect
方法来实现魔法。我的错误是我没有注意到我们需要明确地说明我们的情节是“可选择的”,只有在艺术家点击时才会触发事件picker=True
picker=x
{ {1}}是一个整数,它是触发器的像素容差。因此,除了我在问题中选择的更改,我们应该替换
x
或a.plot(t, s)
, a.plot(t, s,picker=True)
,例如