15

我正在 matplotlib 中处理一些事件。特别是'key_press_event'。但是预定义的键盘快捷键妨碍了我。有没有办法关闭这些?

他们说我可以通过使用“matplotlibrc (#keymap.*)”来覆盖这些键。但我不明白他们指的是什么,我还没有找到任何进一步的解释。

4

2 回答 2

21

您可以在plt.rcParams字典中修改。例如,禁用“save figure”按钮的“s”键盘快捷键:

>>> plt.rcParams['keymap.save']
['s', 'ctrl+s']
>>> plt.rcParams['keymap.save'].remove('s')

如果您希望更改全局/永久应用,请在matplotlibrc文件中编辑并重新启动 Python 解释器。您可以通过调用辅助函数找到系统上配置文件的位置:

>>> matplotlib.matplotlib_fname()
'/Users/wim/.matplotlib/matplotlibrc'

注意:在旧版本的 matplotlib 中,键映射绑定是字符串而不是列表。如果您卡在旧版本上,您可以将值设置为空字符串,而不是调用 remove。

于 2012-10-08T01:23:28.557 回答
2

请参阅https://matplotlib.org/users/customizing.html,了解您可以与上述方法一起使用的所有键盘映射关键字plt.rcParams['keymap.*']

于 2018-06-07T03:13:47.433 回答