Visual Studio Code 无法正确呈现 ipywidget

我在使用 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 中的工作方式与预期一样。我进一步挖掘,似乎:

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

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

这就是我被卡住的地方.. 解决这个问题的下一步是什么?

非常感谢任何指导

谢谢

stack overflow Visual Studio Code does not render ipywidgets correctly
原文答案

答案:

作者头像

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

我不明白到底是什么坏了(或者它是否坏了),但是降级到版本 7.7.1 解决了我遇到的所有问题。

如果你也想尝试一下,你可以运行: pip install -U ipywidgets==7.7.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" )并重新启动内核。

2.检查Jupyter nbextension。

正如在运行 here 之后提到的 pip install ipywidgets 尝试:

jupyter nbextension enable --py widgetsnbextension

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

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

我希望这有帮助。