如何修改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
相关产品推荐
相关产品推荐

