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

Plotly Sunburst图表调用fig.show()打开空白页无报错求助

解决Plotly Sunburst图表显示空白无报错的问题

嘿,我帮你排查了下这段代码,问题其实出在父节点的定义不完整上!你写的parents数组里有不少节点(比如Science_and_Health、Business_and_Law这些)根本没出现在labels列表里,而Plotly的Sunburst图表要求所有父节点必须是labels中的一员——没有这些节点的话,Plotly没法构建出正确的层级结构,自然就渲染出空白页面了,还不会报错(确实有点坑)。

给你改好了代码,核心是补充缺失的父节点到labels里,同时把顶层节点的父节点设为空字符串,再给顶层节点配上合理的数值:

import plotly.graph_objects as go

# 补充所有顶层/中间父节点到labels列表,确保父节点都能找到对应标签
labels = [
    'Science_and_Health', 'Business_and_Law', 'Humanities_and_Social_Science', 'Technology',
    'Biology', 'Economics', 'Physics', 'Chemistry', 'Psychology', 'Sociology', 'Medicine', 
    'Social_psychology', 'Geology', 'Mathematics', 'Classical_mechanics', 'Ecology', 'Fishery', 
    'Engineering', 'Molecular_biology', 'Computer_science', 'Biochemistry', 'Fisheries_management', 
    'Quantum_electrodynamics'
]
# 顶层节点的父节点设为空字符串'',其他子节点对应正确的父节点
parents = [
    '', '', '', '',
    'Science_and_Health', 'Business_and_Law', 'Science_and_Health', 'Science_and_Health', 
    'Science_and_Health', 'Humanities_and_Social_Science', 'Science_and_Health', 
    'Humanities_and_Social_Science', 'Humanities_and_Social_Science', 'Business_and_Law', 
    'Technology', 'Humanities_and_Social_Science', 'Humanities_and_Social_Science', 
    'Technology', 'Science_and_Health', 'Technology', 'Science_and_Health', 
    'Humanities_and_Social_Science', 'Science_and_Health'
]
# 顶层节点的value用子节点的总和,这样层级比例更准确,也可以设为任意非零值
values = [
    40+31+26+20+19+11+10+10, 37+16, 19+18+18+12+12+10, 15+11+10,
    40, 37, 31, 26, 20, 19, 19, 18, 18, 16, 15, 12, 12, 11, 11, 10, 10, 10, 10
]

fig = go.Figure(go.Sunburst(
    labels=labels,
    parents=parents,
    values=values
))
fig.update_layout(margin=dict(t=0, l=0, r=0, b=0))
fig.show()

再给你提两个小排查技巧,以后遇到类似无报错的空白图表能用得上:

  • 先检查数据的层级完整性:所有父节点必须在标签列表里存在,顶层节点的父节点必须是空字符串。
  • 简化测试:先写个只有2-3层的极简数据,确认能正常渲染后,再逐步加回你的完整数据,这样更容易定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 08:22:51