You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Plotly桑基图中节点标签的字体大小与颜色?

Plotly桑基图节点标签字体大小与颜色修改方法

完全可以修改桑基图节点标签的字体大小和颜色,只需在node字典中添加font配置项即可,支持统一设置所有标签,也能单独指定某个标签的样式。

1. 统一设置所有节点标签的字体样式

如果要让所有标签使用相同的字体大小和颜色,直接在node里定义font字典:

import plotly.graph_objects as go

fig = go.Figure(data=[go.Sankey(
    valueformat = ".0f",
    valuesuffix = "MWh",
    node = dict(
      pad = 15,
      thickness = 15,
      line = dict(color = "black", width = 1),
      label = ["Steam 8 MW", "Raff 5 MW", "FAB 3 MW"],
      color = "blue",
      # 统一设置字体大小和颜色
      font = dict(size=14, color="darkred")
    ),
    link = dict(
      source = [0, 0], 
      target = [1, 2], 
      value = [5, 3]
    )
)])

fig.show()

2. 单独修改指定节点标签的样式

如果只想修改某个标签(比如示例中的"Steam 8 MW")的字体大小,只需将font的参数值设为列表,列表元素顺序与label列表一一对应:

import plotly.graph_objects as go

fig = go.Figure(data=[go.Sankey(
    valueformat = ".0f",
    valuesuffix = "MWh",
    node = dict(
      pad = 15,
      thickness = 15,
      line = dict(color = "black", width = 1),
      label = ["Steam 8 MW", "Raff 5 MW", "FAB 3 MW"],
      color = "blue",
      # 单独设置第一个标签(Steam 8 MW)的字体大小为18,其余保持默认12
      font = dict(
          size=[18, 12, 12],
          # 也可以单独设置颜色,比如第一个标签设为红色
          color=["red", "black", "black"]
      )
    ),
    link = dict(
      source = [0, 0], 
      target = [1, 2], 
      value = [5, 3]
    )
)])

fig.show()

在上面的代码中,size列表的第一个元素对应label列表的第一个元素"Steam 8 MW",这样就能单独调整该标签的字体大小,其他标签不受影响。

内容的提问来源于stack exchange,提问作者Ruby Hoofwijk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 22:50:27