存在循环时,绘图仪Sankey图表将被切断

2024-05-19 20:27:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Plotly's Sankey功能绘制Sankey图。我可以让Sankey图正确绘制,除非它们包含循环(即一个状态返回到自身)。当循环发生时,图表有时会在绘图中被截断

例如:

fig = go.Figure(data=[go.Sankey(
    node = dict(
      pad = 0,
      thickness = 10,
      line = dict(color = "black", width = 0.5),
      label = ["A", "B", "C"],
      color = "blue"
    ),
    link = dict(
      source = [0, 0, 0 ],
      target = [0, 1, 0 ],
      value = [8, 4, 2 ]
  ))])

fig.update_layout(title_text="Cut off loop example", font_size=10)
fig.show()

enter image description here

注意圆是如何被切断的。我想让情节显示完整的圆圈,有没有办法做到这一点?我尝试过添加填充和增加绘图的大小,但都没有解决截止问题


Tags: 功能nodego绘图data状态图表fig
1条回答
网友
1楼 · 发布于 2024-05-19 20:27:08

可以通过直接在布局规范中指定高度和宽度来改进这一点。我手动设置这些值

import plotly.graph_objects as go

fig = go.Figure(data=[go.Sankey(
    node = dict(
      pad = 0,
      thickness = 10,
      line = dict(color = "black", width = 0.5),
      label = ["A", "B", "C"],
      color = "blue"
    ),
    link = dict(
      source = [0, 0, 0 ],
      target = [0, 1, 0 ],
      value = [8, 4, 2 ]
  ))])

fig.update_layout(title_text="Cut off loop example", font_size=10, width=1000, height=350)
fig.show()

enter image description here

相关问题 更多 >