plotly Sunburst 图表没有形成完整的圆圈

问题描述 投票:0回答:1

我正在使用plotly graph_objects 创建旭日图来可视化一些分层数据,但是在我当前的图表中:

每个家长(完整分数、生态、经济和社会)都有一个额外的空楔子,这是我不想要的。

以下是我用来生成图表的列表(放入数据框中以便于阅读):

代码:

fig = Figure()

fig.add_trace(Sunburst(
    labels=labels,
    parents=parents,
    values=values,
    text=scores,
    marker=dict(
        colors=scores,
        colorscale='tealgrn',
        cmid=0),
    hovertemplate='<b>%{label} </b> <br> Score: %{text}',
    name='Visualization Criteria Catalogue'
    ))

fig.update_layout(margin = dict(t=0, l=0, r=0, b=0))

我理想的输出是相同的图,只是没有空格。

python plotly
1个回答
0
投票

我对代码中的 add_trace 没有太多经验。但是,我遇到了与您相同的问题,修复我的图表的方法是将

branchvalues='total'
添加到旭日图,如下所示。我在任何地方都没有名为“total”的数据,这是一种设置。有关其工作原理的参考和更好的解释,请参阅 plotly 文档中的此页面,其中指出:

值:设置与旭日扇形相关的值,确定其宽度(有关设置宽度的不同模式,请参阅下面的分支值部分)。

import plotly.express as px

data = dict(
labels=["carbon-free", "carbon", "wind", "solar", "hydro", "thermal", "coal"],
parents=["", "", "carbon-free", "carbon-free", "carbon-free", "carbon", "carbon"],
percentage=[carbon_free_total, carbon_total, wind, solar, hydro, thermal, coal],
)

df = pd.DataFrame(data)

fig = px.sunburst(
    df,
    labels=df['labels'],
    names=df['labels'],
    parents=df['parents'],
    values=df['percentage'],
    branchvalues='total',
)

我正在使用plotly express,但我相信这也适用于绘制图形对象,因为这就是他们在文档中使用的内容。

© www.soinside.com 2019 - 2024. All rights reserved.