14

我有一个 Jupyter 笔记本(python),我使用 plotly express 在笔记本中绘图以进行分析。我想与非编码人员共享这个笔记本,并且仍然可以使用交互式视觉效果 - 但它似乎不起作用。

我尝试遵循此处提出的建议,但即使在保存小部件状态并使用后nbconvert,当我打开新的 HTML 文件时,视觉效果也不可用。

绘制的示例线如下所示:

import plotly_express as px
fig = px.scatter(
    df, 
    x='size', 
    y='size_y', 
    color='clients',
    hover_data=['id'], 
    marginal_y="histogram", 
    marginal_x="histogram"
)
fig.show()
4

4 回答 4

17

在单元格中运行后plotly.offline.init_notebook_mode(),您可以通过文件菜单导出具有完全交互性的笔记本: File --> Export Notebook as... --> Export Notebook to HTML.

于 2019-11-05T19:15:00.263 回答
1

我遇到了类似的问题,但使用的是 JupyterLab。按照此处的说明进行操作:https ://plot.ly/python/renderers/ 。

import plotly.io as pio
pio.renderers.keys()

我必须将以下代码段添加到我的脚本中:

import plotly.io as pio
pio.renderers.default = 'jupyterlab'

之后导出为 HTML 对我有用。您可以阅读“覆盖默认渲染器”。

我想你会需要

pio.renderers.default = 'notebook' 
于 2019-09-03T08:36:17.110 回答
0

您可以使用以下命令从 plotly 指定默认渲染器:

    import plotly.io as pio
    pio.renderers.default = 'pdf'

或显示图像时:

    fig.show(renderer="pdf")

您的 2 个选择是:

  • 'notebook':与 jupyter notebook 配合使用;
  • 'pdf':使用nbconvert转换为 HTML 或 LATEX时完美

您还可以使用“notebook+pdf”加入 2,以便在运行 notebook 时获得迭代图,在使用 nbconvert 进行转换时获得静态图像。

于 2022-01-20T15:18:38.600 回答
-3

我同意@hamiq。使用新版本的 plotly 和 Dash,在 JupyterLab 中使用和使用交互式绘图都变得更加容易。这是我制作的教程的链接,该教程解释了如何开始使用 JupyterLab 和 JupyterDash。https://youtu.be/QkOKkrKqI-k

我希望这对每个人的安装和设置有所帮助。

于 2020-08-23T18:26:26.520 回答