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

Plotly报错'dict'对象无write_html属性 无法导出HTML文件

问题原因

报错AttributeError: 'dict' object has no attribute 'write_html'的核心原因:你手动构造的fig是普通Python字典类型,并非Plotly官方的Figure类实例,只有Figure实例才内置write_html这类导出方法。

解决方法

有两种可行方案,任选其一即可:

方案1(推荐):将字典转换为Plotly Figure对象

在你定义完fig = dict(data=[data_trace], layout=layout)后,新增一行转换代码,后续即可正常调用导出方法:

# 将字典转为Figure实例
fig = go.Figure(fig)
# 现在可以正常调用write_html导出文件了
fig.write_html("sankey.html")

该方案的优势是转换后你可以使用Plotly Figure类的所有内置功能,比如动态修改图表配置、导出为图片/JSON等其他格式,操作灵活度更高。

方案2:直接使用offline的plot方法生成HTML

无需修改fig的类型,直接用你已经导入的plotly.offline.plot方法导出文件即可,你之前用的iplot是专门用于Notebook环境内联渲染的接口,不会生成本地文件,替换为plot即可:

from plotly.offline import plot
# 直接传入字典类型的fig,自动生成HTML文件
plot(fig, filename='sankey.html', validate=False, auto_open=False)

参数说明:auto_open设为False时不会在生成文件后自动打开浏览器,可根据需求调整。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 16:24:03