情节:如何防止朝阳图的最外圈颜色变浅?

Plotly: How to prevent the outermost ring of a sunburst figure from being a lighter shade?

每当我制作 Plotly 旭日图(我使用的是 Python)时,最外面的 'circle' 或环比其余的旭日环要轻得多。我怎样才能让这个戒指的阴影与图表的其余部分相同?

如您所见,标记为 Bb5 的部分比其他部分更亮。

我正在使用标准的 Plotly sunburst 代码。简单示例(无论如何都会更浅):

import plotly.graph_objects as go

fig =go.Figure(go.Sunburst(
    labels=["Eve", "Cain", "Seth", "Enos", "Noam", "Abel", "Awan", "Enoch", "Azura"],
    parents=["", "Eve", "Eve", "Seth", "Seth", "Eve", "Eve", "Awan", "Eve" ],
    values=[10, 14, 12, 10, 2, 6, 6, 4, 4],
))
# Update layout for tight margin
# See https://plotly.com/python/creating-and-updating-figures/
fig.update_layout(margin = dict(t=0, l=0, r=0, b=0))

fig.show()

您正在寻找:

leaf=dict(opacity=1)

这设置了叶子的不透明度。对于指定的色阶,默认为 1,否则默认为 0.7.

情节 1: leaf=dict(opacity=1)

现在,将其与:

情节 2: leaf=None

现在,不透明度默认为 0.7

然后看看当您为 colorscale 指定值时会发生什么:

情节 3: colorscale='RdBu'

如果省略叶子参数,则图中叶子的不透明度默认为 1:

最后,您可以使用 colorscale leaf=dict(opacity=0.2) 两种方式。我只是在这里将不透明度设置得非常低以明确指出:

这是您正在寻找的案例的完整代码:

import plotly.graph_objects as go

fig =go.Figure(go.Sunburst(
    labels=["Eve", "Cain", "Seth", "Enos", "Noam", "Abel", "Awan", "Enoch", "Azura"],
    parents=["", "Eve", "Eve", "Seth", "Seth", "Eve", "Eve", "Awan", "Eve" ],
    values=[10, 14, 12, 10, 2, 6, 6, 4, 4],
    leaf=dict(opacity=1),
    #marker=dict(colorscale='RdBu')
))

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

fig.show()