首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当工具栏小部件选择时忽略matplotlib游标小部件?

当工具栏小部件选择时忽略matplotlib游标小部件?
EN

Stack Overflow用户
提问于 2013-12-20 20:05:13
回答 3查看 2.5K关注 0票数 5

我在交互式Matplotlib图中使用一个游标小部件,如下所示:

代码语言:javascript
复制
cursor = Cursor(ax1, useblit=True, color='red', linewidth=1)
cid = fig.canvas.mpl_connect('button_press_event', on_click)

效果很好。on_click函数采用x,y单击位置,并进行一些补充绘图。基本的东西。

当我激活缩放工具时,我也在捕捉点击。是否有必要将激活和停用键笔画绑定到小部件( RectangleSelector示例)小部件上,还是存在一个知道工具栏项状态的方法?

从RectangleSelector示例中打开/关闭选择器的示例:

代码语言:javascript
复制
def toggle_selector(event):
    if event.key in ['Q','q'] and toggle_selector.RS.active:
        toggle_selector.RS.set_active(False)
    if event.key in ['A', 'a'] and not toggle_selector.RS.active:
        toggle_selector.RS.set_active(True)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-12-20 22:18:51

那不是公共状态,但你可以检查

代码语言:javascript
复制
fig.canvas.manager.toolbar._active is None

如果工具栏不试图抓取单击(通过平移或缩放),则为True

你正在接触和接触可能随时改变的内部状态,所以你要冒着自己的风险使用它。开发人员对更改任何以_*开头的不带推荐期的内容都没有任何遗憾。

票数 9
EN

Stack Overflow用户

发布于 2020-08-17 08:36:19

由于使用了接受答案,matplotlib版本3.3不再适用于此承诺。当使用标准NavigationToolbar2时,您可以使用它的mode属性。

类似于重要性--的回答的示例

代码语言:javascript
复制
import matplotlib.pyplot as plt

fig, ax = plt.subplots()

def on_click(evt):
    state = fig.canvas.manager.toolbar.mode
    if state == '':
        print("no tool selected")
    else:
        print(f"{state} selected")

cid = fig.canvas.mpl_connect('button_press_event', on_click)

plt.show()
票数 2
EN

Stack Overflow用户

发布于 2019-08-30 10:31:14

由于toolmanager工具栏现在可以用于更多后端,因此在这里可能会很有用。

代码语言:javascript
复制
import matplotlib.pyplot as plt
plt.rcParams['toolbar'] = 'toolmanager'

fig, ax = plt.subplots()

def on_click(evt):
    state = fig.canvas.manager.toolbar.toolmanager.active_toggle["default"]
    if state is None:
        print("no tool selected")
    else:
        print(f"{state} selected")

cid = fig.canvas.mpl_connect('button_press_event', on_click)

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

https://stackoverflow.com/questions/20711148

复制
相关文章

相似问题

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