簡體   English   中英

IPython Notebook ipywidgets 不顯示

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM