【问题标题】:jupyter matplotlib interactive exitjupyter matplotlib 交互式退出
【发布时间】:2017-10-02 01:05:08
【问题描述】:

我已经绘制了一个交互式图形,运行单元格,现在我所有的键盘按键都被交互式绘图捕获。没有鼠标怎么存在?

Shift-enter 的作品,但似乎需要在情节下方有一个单元格。

我认为 matplotlib 建议使用 ctrl-w,但因为我使用的是 Web 浏览器 (Jupyter),它只会关闭我的标签页。

情节在单元格内。

%matplotlib notebook

import numpy as np
import matplotlib.pyplot as plt

fig,ax = plt.subplots(1,1)
x = np.linspace(0, 1, 100)
y = np.random.random(size=(100, 1))
ax.plot(x, y)

如果您运行此程序,则在退出交互式绘图之前,您不能使用 j,k 上下移动单元格。

这只是一个代码 sn-p,在实际代码中,我从循环中更新绘图,这就是我使用交互模式的原因。

【问题讨论】:

  • 啊,对不起,我不知道可以在单元格外绘图,我已经更新了这个问题,希望让它更清楚。感谢您指出歧义。

标签: python matplotlib jupyter-notebook


【解决方案1】:

您可以添加另一个快捷键来关闭绘图。这可以通过rcParams 来完成。
因此,假设您想通过按 q 来关闭绘图。

%matplotlib notebook
import matplotlib.pyplot as plt
plt.rcParams["keymap.quit"] = "ctrl+w", "cmd+w", "q" 

plt.plot([1,3,2])

现在按下 q 将退出交互式绘图,这样您就可以像往常一样在笔记本中导航。例如。然后进入下一个已经处于活动状态的单元格,只需按 Enter

最终,您可能希望使用此选项更改您的matplotlib rc file,而不必每次启动笔记本时都输入它。

【讨论】:

  • 谢谢,这确实有效,尽管我现在意识到我没有问对问题。我将保持原样,因为我不想从根本上改变这篇文章的含义。但是,如果我不想退出,而是想重新获得对键盘的控制权怎么办? (这可以用鼠标完成)
  • Mhh,由于 matplotlib 绘图捕获了所有键盘输入,因此很难使其保持活动状态,但仍会返回到 jupyter 笔记本。目前我不得不承认我不知道这是否可能或如何解决这个问题,抱歉。
猜你喜欢
  • 2018-07-04
  • 2018-05-11
  • 2017-09-03
  • 1970-01-01
  • 2020-03-20
  • 2018-10-03
  • 2020-05-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多