[英]IPython Notebook ipywidgets does not show
我创建了一个带有交互式滑块的表格,允许我在表格的不同时间段之间切换。 过去几天它一直在工作,直到今天,当我重新运行笔记本时,滑块不再显示。 不会出现错误消息。 当表格出现时,代码似乎运行得很好,但只是没有出现滑动条。 我也没有更改代码,因为我正在处理笔记本的一个单独部分。
我尝试了很多方法,包括在这个空间中搜索,但仍然无法提出解决方案。 我想知道是否有人遇到过类似的问题,并且对此有任何解决方案。
下面是我的代码片段。 之前的任何事情都只是为了将我的数据转换为所需的表格形式。
from IPython.display import display
from ipywidgets import widgets, interactive
v = interactive(by_q, quarter=(['q1y2015', 'q2y2015', 'q3y2015', 'q4y2015']), days=(1, 180))
display(v)
使用新版本的ipywidgets
,我遇到了这个问题,但后来我在他们的 github 自述文件中发现你现在需要遵循
pip install ipywidgets
与
jupyter nbextension enable --py widgetsnbextension
这为我解决了问题。
在没有希望的情况下搜索了一段时间后,我意识到我需要
jupyter labextension install @jupyter-widgets/jupyterlab-manager
如果您已经在ipywidgets
安装了 [旧版本] 的ipywidgets
并且您看到了这个问题(您可能会在浏览器控制台中看到 javascript 错误),那么您需要运行install
命令来更新相关文件例如:
jupyter nbextension install --user --py widgetsnbextension
您可能还需要重新运行enable
命令,例如:
jupyter nbextension enable --user --py widgetsnbextension
注意:如果您使用的是 virtualenv 或其他环境,则--user
参数可能需要不同 - 有关更多详细信息,请参阅ipywidget 文档。
可能是我犯的一个愚蠢的错误,但是如果您使用的是虚拟环境,请正确记住从何处运行的内容。
您可能每次都根据需要从当前环境中正确运行 Jupyter,或者可能有一个根环境,您总是从中启动 Jupyter,最终将用于所有环境。
对于后一种情况,您需要确保为实际运行的 Jupyter 启用 nbextension,而不是在当前活动的环境中错误地运行命令。
我认为 plot.ly 导入了一个名为display
的函数,它覆盖了 ipython 中的函数display
。 尝试更改导入顺序或简单地以不同的名称导入函数
添加到 Alexander Svetly 的回答中,运行:
jupyter labextension install @jupyter-widgets/jupyterlab-manager
似乎卡住了,通过添加 --debug 我能够看到:
jupyter labextension install --debug @jupyter-widgets/jupyterlab-manager
[...]
npm notice 📦 @jupyter-widgets/jupyterlab-manager@3.0.0-alpha.2
[...]
Fetching URL: https://registry.yarnpkg.com/@jupyter-widgets%2Fjupyterlab-manager
看起来它正在尝试安装第 3 版,但我使用的是 Jupyter Lab 的 2.2.9 版,所以最终成功的是:
jupyter nbextension enable --py widgetsnbextension --sys-prefix
jupyter labextension install --debug @jupyter-widgets/jupyterlab-manager@2.0
显然,如果您尝试在虚拟环境中使用它并在 vscode 上运行,那么 jupyter notebook 本身并不能有效地工作,但它可以使用ipython <notebook_name>
,但在这种情况下,您将无法可视化小部件。 所以最好的方法是做jupyter notebook <notebook name>
,它会在chrome上打开notebook,然后先更改内核,即选择你的虚拟环境并在chrome上运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.