首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未调用Wedge的pick_event处理程序

未调用Wedge的pick_event处理程序
EN

Stack Overflow用户
提问于 2019-09-19 19:29:36
回答 1查看 20关注 0票数 0

我有下面的代码来显示一个按钮,我想做一些事情,一旦用户点击补丁。因此,我将一个处理程序连接到"pick_event",并通过传递picker=True关键字arg启用了挑选补丁。

一切都很好,除了当我实际单击补丁时什么也没有发生,即处理程序似乎没有被调用。

任何人都可以重现这个问题或提出解决方案吗?

代码语言:javascript
复制
from matplotlib.patches import Wedge
from matplotlib.collections import PatchCollection
import matplotlib.pyplot as plt

patches = [Wedge((5., 5.), 0.5, 30., 330., picker=True)]

fig, ax = plt.subplots()
ax.add_collection(PatchCollection(patches))
ax.set_xlim([0, 10.])
ax.set_ylim([0, 10.])

fig.canvas.mpl_connect('pick_event', lambda evt: print(evt))

plt.show()

当我添加另一个ax.scatter([2.5], [2.5], picker=True)并单击该点时,处理程序被正确调用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-19 20:14:42

我认为您需要使用PatchCollection的set_picker函数。我没有尝试,但我在文档中找到了类似的东西。set_picker documentation

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58010018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档