【发布时间】:2016-05-05 19:19:58
【问题描述】:
所有人的上帝日。我正在尝试在 Jupyter + IPython 环境中执行 Cirille Rossant 的“IPython Interactive Computing an Visualizing Cookbook”一书中的代码。
在我尝试之前一切正常:
from collections import OrderedDict
from IPython.display import (display, clear_output, YouTubeVideo)
from IPython.html.widgets import DropdownWidget
如果我确实重新启动到内核,则会出现此消息:
/usr/local/lib/python3.4/dist-packages/IPython/html.py:14: ShimWarning: The `IPython.html` package has been deprecated. You should import from `notebook` instead. `IPython.html.widgets` has moved to `ipywidgets`.
"`IPython.html.widgets` has moved to `ipywidgets`.", ShimWarning)
然后我尝试通过以下方式更改第三行(问题):
from ipywidgets import DropdownWidgets
但 Jupyter 回答:ImportError: cannot import name 'DropdownWidget'
有人可以帮帮我吗?
接下来是部分答案
嗯,在网上寻找我在此页面ipywidgets installation 的问题和问题的答案。
我尝试下一个示例并且工作正常:
import numpy as np
url = "http://donnees.ville.montreal.qc.ca/dataset/f170fecc-18db-44bc-b4fe-5b0b6d2c7297/resource/ec12447d-6b2a-45d0-b0e7-fd69c382e368/download/2013.csv"
df = pd.read_csv(url, index_col='Date', parse_dates=True, dayfirst=True)
from ipywidgets import interact
@interact
def plot(n=(1, 30)):
pd.rolling_mean(df['Berri1'], n).dropna().plot()
plt.ylim(0, 8000)
plt.show()
但 jupyter 声称我必须这样做:jupyter nbextension enable --py --sys-prefix widgetsnbextension
我去终端听从建议,jupyter回应:
Configure an nbextension to be automatically loaded
Options
-------
Arguments that take values are actually convenience aliases to full
Configurables, whose aliases are listed on the help line. For more information
on full configurables, see '--help-all'.
--debug
set log level to logging.DEBUG (maximize logging output)
-y
Answer yes to any questions instead of prompting.
--generate-config
generate default config file
--section=<Unicode> (EnableNBExtensionApp.section)
Default: 'notebook'
Which config section to add the extension to. 'common' will affect all
pages.
To see all available configurables, use `--help-all`
[EnableNBExtensionApp] CRITICAL | Bad config encountered during initialization:
[EnableNBExtensionApp] CRITICAL | Unrecognized flag: '--py'
查看1 中的建议:jupyter nbextension enable --py widgetsnbextension,但在控制台中建议jupyter nbextension enable --py --sys-prefix widgetsnbextension。请注意,有一点区别,但在两种情况下都出现关于--py 选项的相同错误
在这一刻,问题得到了部分回答。
【问题讨论】:
-
最后一条错误信息看起来你需要先升级
notebook。大多数小部件类从名称中删除了“小部件”,因此DropdownWidget可能变成了Dropdown。 -
谢谢托马斯,你有理由,看着我发布的答案中的网页,所有的语法都像你说的那样改变了。现在我正在查看笔记本并寻找类似的变化。
标签: python ipython jupyter jupyter-notebook ipywidgets