我在使用 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
这就是我陷入困境的地方。接下来要解决这个问题是什么?
非常感谢任何指导
谢谢
我看到报告的一些问题似乎是在 ipywidgets 8 发布后开始的。
我不明白到底出了什么问题(或者是否有问题),但降级到版本
7.7.1
解决了我遇到的所有问题。
如果你也想尝试一下,你可以运行:
pip install -U ipywidgets==7.7.1
对我有帮助的事情(即使在 VS Code 支持之后)很简单,但不太直观:在浏览器中运行 jupyter 笔记本
只需做一个简单的
jupyter notebook path/to/file.ipynb
并运行它(即使有错误)Developer: Reload Window
) 并重试有两件事你可以探索。
在 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"
)并重新启动内核。
如此处所述,运行后
pip install ipywidgets
尝试:
jupyter nbextension enable --py widgetsnbextension
注意:如果您使用虚拟环境(包括 conda 环境),激活扩展的推荐方法是运行
jupyter nbextension enable --py --sys-prefix widgetsnbextension
我希望这有帮助。