python - plotly sankey图定位
问题描述
我想为 Plotly Sankey 图添加一些注释。
而且我想将它们绘制在 sankey 节点块上(具有相同的 x 位置),但找不到这样做的方法,甚至找不到节点的 X 坐标。(认为获得它们而不是手动添加会更好,因为 sankey 级别的数量可能会改变)
如果我们以这个基本示例为例,我想在相应的节点上添加“A”、“B”和“C”标签
import plotly.graph_objects as go
fig = go.Figure(data=[go.Sankey(
node = dict(
pad = 15,
thickness = 20,
line = dict(color = "black", width = 0.5),
label = ["A1", "A2", "B1", "B2", "C1", "C2"],
color = "blue"
),
link = dict(
source = [0, 1, 0, 2, 3, 3], # indices correspond to labels, eg A1, A2, A1, B1, ...
target = [2, 3, 3, 4, 4, 5],
value = [8, 4, 2, 8, 4, 2]
))])
fig.update_layout(title_text="Basic Sankey Diagram", font_size=10)
fig.show()
解决方案
您可以fig.add_annotation()
在这种情况下使用。在下面添加以下行fig.update_layout()
fig.add_annotation(dict(font=dict(color="black",size=12), x=0, y=1.06, showarrow=False, text='<b>A</b>'))
fig.add_annotation(dict(font=dict(color="black",size=12), x=0.5, y=1.06, showarrow=False, text='<b>B</b>'))
fig.add_annotation(dict(font=dict(color="black",size=12), x=1, y=1.06, showarrow=False, text='<b>C</b>'))
推荐阅读
- android - 在 Eclipse Neo 中添加自定义 Android 字体
- asp.net-mvc - HOWTO:在 Visual Studio 中远程调试 ASP.NET MVC 版本构建
- java - 什么是 android.uid.system: 1000 为什么会显示?
- kubernetes-helm - 在 skaffold.yml 中基于平台设置主机环境变量
- sql - 为什么这个 PostgreSQL 查询会导致 0 个结果,即使我知道有
- python-3.x - 使用时间序列制作群体图
- javascript - HTMLAudioElement 和授权
- html - React 中的锚点
- c# - C# DateTime 如何确定现在和今天的时间
- excel - 如何通过VBA在excel中创建具有特殊格式的字符串列表