IPython 笔记本 ipywidgets 不显示
IPython Notebook ipywidgets does not show
我创建了一个带有交互式滑块的 table,它允许我在 table 的不同时期之间切换。这几天一直在用,直到今天重新运行记事本的时候,滑动条不显示了。没有错误消息出现。代码似乎 运行 就好了,因为 table 出现了,但是滑动条没有出现。我也没有更改我的代码,因为我正在处理笔记本的单独部分。
我尝试了很多方法,包括在这个 space 中搜索,但仍然无法找到解决方案。想请问有没有人遇到过类似的问题,有什么解决办法。
下面是我的代码片段。之前的任何事情都只是为了将我的数据转换成所需的表格形式。
from IPython.display import display
from ipywidgets import widgets, interactive
v = interactive(by_q, quarter=(['q1y2015', 'q2y2015', 'q3y2015', 'q4y2015']), days=(1, 180))
display(v)
我认为 plot.ly 导入了一个名为 display
的函数,它覆盖了 ipython 中的函数 display
。尝试更改导入顺序或简单地以不同的名称导入函数
随着 ipywidgets
的新版本,我 运行 遇到了这个问题,但后来我在 their github readme 上发现您现在需要遵循
pip install ipywidgets
和
jupyter nbextension enable --py widgetsnbextension
注意:对于那些使用虚拟环境(包括 conda 环境)的人,推荐的激活扩展的方法是 运行
jupyter nbextension enable --py --sys-prefix widgetsnbextension
这为我解决了问题。
可能是我犯的一个愚蠢的错误,但如果您使用的是虚拟环境,请牢记运行从哪里来的东西。
您可能会根据需要每次都从当前环境中正确地 运行 Jupyter,或者可能有一个根环境,您始终从中启动最终将用于所有环境的 Jupyter。
对于后一种情况,您需要确保为您实际上 运行 正在使用的 Jupyter 启用 nbextension,而不是错误地 运行 来自您当前活动环境中的命令。
在谷歌了一段时间没有希望后,我意识到我需要
jupyter labextension install @jupyter-widgets/jupyterlab-manager
如果您已经在 Jupyter 中安装了 [旧版本] ipywidgets
并且您遇到了这个问题(您可能会在浏览器控制台中看到 javascript 错误)那么你需要运行 install
命令来更新相关文件例如:
jupyter nbextension install --user --py widgetsnbextension
您可能还需要重新运行 enable
命令,例如:
jupyter nbextension enable --user --py widgetsnbextension
注意:如果您使用的是 virtualenv 或其他环境,--user
参数可能需要不同 - 有关更多详细信息,请参阅 ipywidget docs。
添加到 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 上使用 运行ning,那么 jupyter notebook 本身的工作效率不高,但它可以使用 ipython <notebook_name>
,但在那种情况下,您将无法可视化小部件。所以最好的方法是做 jupyter notebook <notebook name>
,这将在 chrome 上打开笔记本,然后先更改内核,即选择您的虚拟环境和 chrome 上的 运行。
致来自 jupyterlab 的所有人
请检查在 Jupyter 3.0 中运行的步骤docs
请检查使其在 Jupyter 1 0r 2 中运行的步骤 docs
在此之后重新启动或构建实验室以查看更改
我创建了一个带有交互式滑块的 table,它允许我在 table 的不同时期之间切换。这几天一直在用,直到今天重新运行记事本的时候,滑动条不显示了。没有错误消息出现。代码似乎 运行 就好了,因为 table 出现了,但是滑动条没有出现。我也没有更改我的代码,因为我正在处理笔记本的单独部分。
我尝试了很多方法,包括在这个 space 中搜索,但仍然无法找到解决方案。想请问有没有人遇到过类似的问题,有什么解决办法。
下面是我的代码片段。之前的任何事情都只是为了将我的数据转换成所需的表格形式。
from IPython.display import display
from ipywidgets import widgets, interactive
v = interactive(by_q, quarter=(['q1y2015', 'q2y2015', 'q3y2015', 'q4y2015']), days=(1, 180))
display(v)
我认为 plot.ly 导入了一个名为 display
的函数,它覆盖了 ipython 中的函数 display
。尝试更改导入顺序或简单地以不同的名称导入函数
随着 ipywidgets
的新版本,我 运行 遇到了这个问题,但后来我在 their github readme 上发现您现在需要遵循
pip install ipywidgets
和
jupyter nbextension enable --py widgetsnbextension
注意:对于那些使用虚拟环境(包括 conda 环境)的人,推荐的激活扩展的方法是 运行
jupyter nbextension enable --py --sys-prefix widgetsnbextension
这为我解决了问题。
可能是我犯的一个愚蠢的错误,但如果您使用的是虚拟环境,请牢记运行从哪里来的东西。
您可能会根据需要每次都从当前环境中正确地 运行 Jupyter,或者可能有一个根环境,您始终从中启动最终将用于所有环境的 Jupyter。
对于后一种情况,您需要确保为您实际上 运行 正在使用的 Jupyter 启用 nbextension,而不是错误地 运行 来自您当前活动环境中的命令。
在谷歌了一段时间没有希望后,我意识到我需要
jupyter labextension install @jupyter-widgets/jupyterlab-manager
如果您已经在 Jupyter 中安装了 [旧版本] ipywidgets
并且您遇到了这个问题(您可能会在浏览器控制台中看到 javascript 错误)那么你需要运行 install
命令来更新相关文件例如:
jupyter nbextension install --user --py widgetsnbextension
您可能还需要重新运行 enable
命令,例如:
jupyter nbextension enable --user --py widgetsnbextension
注意:如果您使用的是 virtualenv 或其他环境,--user
参数可能需要不同 - 有关更多详细信息,请参阅 ipywidget docs。
添加到 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 上使用 运行ning,那么 jupyter notebook 本身的工作效率不高,但它可以使用 ipython <notebook_name>
,但在那种情况下,您将无法可视化小部件。所以最好的方法是做 jupyter notebook <notebook name>
,这将在 chrome 上打开笔记本,然后先更改内核,即选择您的虚拟环境和 chrome 上的 运行。
致来自 jupyterlab 的所有人
请检查在 Jupyter 3.0 中运行的步骤docs
请检查使其在 Jupyter 1 0r 2 中运行的步骤 docs
在此之后重新启动或构建实验室以查看更改