我已成功安装 Plotly python 库以与 JupyterLab 一起使用。我安装了正确的扩展。 (所有指示均遵循:https://plot.ly/python/getting-started/)
大多数基本绘图都可以很好地显示在我的笔记本文件中,并且交互性非常好!但是,有些 plotly 没有出现,我不知道为什么。
例如,以下内容就可以正常工作:
import plotly.express as px
df = px.data.iris()
fig = px.scatter(df, x="sepal_width", y="sepal_length",
color="species", marginal_y="rug", marginal_x="histogram")
fig.show()
但是,简单的 scatter_matrix
或 parallel_coordinates
不会显示任何输出。例如,以下内容不起作用:
fig = px.scatter_matrix(df, color="species")
fig.show()
控制台或输出单元中没有出现错误。细胞执行,就是这样。它没有显示任何结果。
我做了以下事情:
- 更新 conda:
conda update --all -cplotly -c conda-forge
- 清理和重建 jupyter lab 扩展:
jupyter lab clean
和jupyter lab build
。 - 我还按照以下方法尝试了相关的故障排除选项:https://plot.ly/python/troubleshooting/ 。
- 我尝试在常规 Jupyter 中运行笔记本,它在那里也不起作用,尽管确实出现了 plotly 的开始, plotly 上有一张悲伤的脸,表明有些事情不高兴,但我不当然可以。
- 我尝试使用
plotly.graph_objects
API 而不是plotly.express
重新编码上述内容。同样的结果。
我仍然遇到同样的问题。
值得注意的是,我可以执行以下操作:
fig = px.scatter_matrix(df, color="species")
fig.show(renderer='browser')
这会自动打开浏览器窗口并且工作得很好。因此,绘图引擎本身似乎很好,只是某些类型的绘图的 jupyter 连接出现了一些问题。
关于在哪里查看或者我做错了什么有什么建议吗?谢谢!
最佳答案
好吧,在尝试了很多不同的方法来使其正常工作后,我最终决定清理所有内容。我做了以下事情:
-
conda clean --all
-
conda update --all -c plotly -c defaults -c conda-forge
( channel 说明符的顺序很重要!) -
jupyter labextension update --all
-
jupyter lab clean
-
jupyter lab build
而且,我还注意到我的笔记本不受信任。所以,我让笔记本变得值得信赖。而且,现在一切正常!当我这样做时有很多更新conda update --all
上面是因为我与 channel 一起使用的顺序。我肯定把defaults
channel 优先级更高,从 conda-forge
安装的软件包要少得多。这改变了很多软件包的版本,但我不确定是哪些。我可以查看 conda 中的修订并稍后获取该列表,尽管软件包总是在更新,所以它可能不相关。
我想知道将笔记本设置为“可信”是否真的是唯一的问题?好吧,我尝试清除信任设置:
-
jupyter trust --reset
而且,它仍然有效。因此,我倾向于相信这不是笔记本的信任问题,而是某些版本与我从主 conda channel defaults
更新的众多软件包发生冲突。而不是conda-forge
。
目前,一切都很好。谢谢 rpanai 的插话。
关于python - 一些 Plotly 绘图未在 JupyterLab 中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59970832/