Visual Studio Code 无法正确呈现 ipywidgets

问题描述 投票:0回答:3

我在使用 Visual Studio Code 时遇到问题。该代码似乎与 ipywidgets 有问题。 代码如下(非常简单的交互式图表)

from ipywidgets import interact
import ipywidgets as widgets
import numpy as np
import plotly.graph_objects as go
@interact
def foo(beta=(-10,10,1)):
    myx = np.arange(0,100,1)
    myy = myx *beta 
    print ('debug:',myy)
    fig = go.FigureWidget()
    fig.add_scatter(x= myx, y=myy)
    fig.show()

相同的代码在 Jupyter Notebook 中的工作方式与预期相同。 我进一步挖掘,似乎:

“小部件要求我们从第 3 方网站下载支持文件。加载plotlywidget 时出错:^4.14.3

https://github.com/microsoft/vscode-jupyter/wiki/IPyWidget-Support-in-VS-Code-Python

这就是我陷入困境的地方。接下来要解决这个问题是什么?

非常感谢任何指导

谢谢

visual-studio-code ipywidgets
3个回答
18
投票

我看到报告的一些问题似乎是在 ipywidgets 8 发布后开始的。

我不明白到底出了什么问题(或者是否有问题),但降级到版本

7.7.1
解决了我遇到的所有问题。

如果你也想尝试一下,你可以运行:

pip install -U ipywidgets==7.7.1


0
投票

对我有帮助的事情(即使在 VS Code 支持之后)很简单,但不太直观:在浏览器中运行 jupyter 笔记本
只需做一个简单的

jupyter notebook path/to/file.ipynb
并运行它(即使有错误)
然后重新启动 VS Code 窗口 (F1 ->
Developer: Reload Window
) 并重试
对我来说它神奇地修复了它^^


-1
投票

有两件事你可以探索。

  1. 检查模块:

在 conda 或虚拟环境中运行

jupyter --version
命令。 你应该看到这样的东西:

IPython          : 8.4.0
ipykernel        : 6.9.1
ipywidgets       : 7.7.1
jupyter_client   : 7.2.2
jupyter_core     : 4.10.0
jupyter_server   : 1.21.0
jupyterlab       : 3.4.8
nbclient         : 0.6.4
nbconvert        : 6.5.0
nbformat         : 5.4.0
notebook         : 6.4.12
qtconsole        : not installed
traitlets        : 5.4.0

如果有任何未安装的模块(除了 qtconsole),请尝试安装它们(使用

pip install "module"
)并重新启动内核。

  1. 检查 Jupyter nbextension。

此处所述,运行后

pip install ipywidgets
尝试:

jupyter nbextension enable --py widgetsnbextension

注意:如果您使用虚拟环境(包括 conda 环境),激活扩展的推荐方法是运行

jupyter nbextension enable --py --sys-prefix widgetsnbextension

我希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.