在jupyter笔记本中使用plotly时验证失败

时间:2017-10-24 12:15:49

标签: python jupyter-notebook plotly

当我用一个情节图保存一个jupyter笔记本时,我收到以下错误:

[E 13:42:38.458 NotebookApp] Notebook JSON is invalid: {'data': [{'type': 'scatter', 'y': [1, 2, 3]}], 'layout': {}} is not valid under any of the given schemas

Failed validating 'oneOf' in schema['properties']['data']['patternProperties']['^(?!application/json$)[a-zA-Z0-9]+/[a-zA-Z0-9\\-\\+\\.]+$']:
    {'oneOf': [{'type': 'string'},
               {'items': {'type': 'string'}, 'type': 'array'}]}

On instance['data']['application/vnd.plotly.v1+json']:
    {'data': [{'type': 'scatter', 'y': [1, 2, 3]}], 'layout': {}}

笔记本中的代码是:

import plotly.offline as py
import plotly.graph_objs as go
py.init_notebook_mode(connected=True)
data = [go.Scatter(y=[1,2,3])]
py.iplot(data)

关注plotly plots in jupyter notebooks: Validation fails when saving后,我更新了nbformat但仍无效(我使用import nbformat nbformat__version__检查了更新是否有效)

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题。我尝试更新nbformat甚至 conda update --all ,但这也无济于事。

后来我得到了一个链接:https://gitmemory.com/issue/jupyter/nbformat/161/574959380。 因此,我用文本编辑器打开了ipynb文件,将“ nbformat_minor”:1 替换为“ nbformat_minor”:4 ,然后保存了文件。重新加载笔记本后,问题已解决。

答案 1 :(得分:0)

我遇到了一个不同的错误 -

Notebook validation failed: {'type': 'string'} is not valid under any of the given schemas: { "type": "string" }

但是将 "nbformat_minor": 1 替换为 "nbformat_minor": 4 对我有用。