我正在尝试使用plotly的旭日形和树形图来可视化数据。但是,我发现子节点的大小比其父节点的大小错误,也就是说,子节点的总和不能覆盖父节点的大小。
import plotly.graph_objects as go
fig =go.Figure(go.Treemap(
labels= ["i_1", "i_2", "c_a", "i_3", "c_b"],
parents= ["c_a", "c_a", "", "c_b", ""],
values= [3, 2, 5, 2, 2],
))
fig.show()
输出:
如您所见,在原始数据中,i_1和i_2的总和为5,等于其父c_a的5。但是在图中,“ i_1”和“ i_2”未一起填充“ c_a”块。 i_3和c_b也是如此。即使鼠标悬停弹出窗口显示正确的值。
朝阳的可视化也是如此:
import plotly.graph_objects as go
fig =go.Figure(go.Sunburst(
labels= ["i_1", "i_2", "c_a", "i_3", "c_b"],
parents= ["c_a", "c_a", "", "c_b", ""],
values= [3, 2, 5, 2, 2],
))
fig.show()
同样,i_1和i_2并没有涵盖c_a的整个范围。
是用来强制性地真实表示父子尺寸比例的设置。老实说,当前的表示形式无法用于我的目的。
答案 0 :(得分:2)
是,设置branchvalues="total"
。如图所示,默认值为"remainder"
,它将值添加到子项的总和中。您也可以保留该设置,并将所有非叶节点的值设置为0。