You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用VS Code导出含Plotly图表的Jupyter Notebook为HTML且隐藏代码?

解决IPython Notebook导出HTML时隐藏代码且Plotly图表正常渲染的问题

核心问题分析

你遇到的矛盾本质是:Plotly交互式图表依赖输出单元格中嵌入的JavaScript资源,VS Code导出能保留这些资源但会显示代码;命令行--no-input参数能隐藏代码,但如果未确保输出包含Plotly的JS资源,就会导致图表无法渲染。

可行解决方案

方案1:预先配置Plotly渲染模式+命令行导出

  1. 在Notebook开头添加并运行以下代码,确保Plotly输出嵌入离线JS资源:
import plotly.io as pio
pio.renderers.default = 'notebook'
  1. 重新运行所有包含Plotly图表的单元格,确认图表正常显示(此时输出单元格已包含Plotly的JS代码)。
  2. 执行命令行导出:
jupyter nbconvert --to html --no-input file.ipynb

该命令会隐藏所有代码单元格,同时保留包含JS资源的输出单元格,确保Plotly图表能正常渲染。

方案2:一键执行+导出(适合未预先运行的Notebook)

如果Notebook尚未运行,可直接用以下命令完成「执行Notebook→隐藏代码→导出HTML」全流程:

jupyter nbconvert --to html --no-input --execute file.ipynb

--execute参数会先运行所有单元格生成正确的Plotly输出,再结合--no-input隐藏代码,最终导出的HTML同时满足两个需求。

方案3:VS Code扩展辅助实现

若偏好使用VS Code的导出功能,可安装Jupyter Hide Code扩展:

  • 安装后,用扩展功能隐藏Notebook中所有代码单元格
  • 保持pio.renderers.default='notebook'配置并运行过单元格
  • 再使用VS Code自带的「Jupyter:Export to HTML」功能导出,即可得到无代码且Plotly图表正常渲染的HTML文件

注意:你之前使用的--WebPDFExporter.embed_images=True参数仅适用于PDF导出,对HTML无效,无需添加。

内容的提问来源于stack exchange,提问作者seblon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 11:17:42