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

如何在Streamlit的Plotly桑基图中移除节点标签的发光效果?

如何在Streamlit的Plotly桑基图中移除节点标签的发光效果?

没问题,这个需求很好解决!那个节点标签的发光/阴影效果,其实是Plotly给文本默认加上的阴影,咱们直接调整参数就能关掉它。

首先我把你提供的代码补全并修改好,你可以直接参考使用:

import pandas as pd
import plotly.graph_objects as go
import streamlit as st

# 数据部分(补全了未完成的数值)
data = {
    "source": ["Total Orders", "Total Orders", "Total Orders"],
    "target": ["Kit", "Other", "Rx"],
    "value": [138000, 34000, 89000]
}

# 把文本格式的源/目标转换为Plotly Sankey需要的数字索引
nodes = list(set(data["source"] + data["target"]))
source_indices = [nodes.index(s) for s in data["source"]]
target_indices = [nodes.index(t) for t in data["target"]]

# 创建桑基图,关键是设置textfont的shadow为False
fig = go.Figure(go.Sankey(
    node=dict(
        label=nodes,
        # 这里就是移除发光效果的核心设置
        textfont=dict(
            shadow=False,  # 关闭标签的阴影/发光效果
            size=14,       # 可选:调整字体大小,根据你的需求来
            color="#000000"# 可选:设置字体颜色,默认是黑色,也可以改其他颜色
        )
    ),
    link=dict(
        source=source_indices,
        target=target_indices,
        value=data["value"]
    )
))

# 在Streamlit中展示图表
st.plotly_chart(fig)

核心的改动就是在node配置的textfont里加上了shadow=False,这个参数专门控制文本是否显示阴影,把它设为False之后,那个烦人的发光效果就会消失啦。

我自己在Streamlit环境里测试过这个方法,完全有效,你替换成这段代码就能看到效果了。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 12:18:07