Superset技术问询:如何编辑图表图例中的值标签?
在Superset中不修改原始数据编辑图例值标签的方法
当然可以在不修改原始数据的前提下实现,以下是几种可行的方法:
方法1:在图表Data页使用自定义SQL映射值
进入图表的「Data」配置页面,找到「Custom SQL」或者「Derived Columns」选项,用SQL的CASE语句对原始值做映射,生成新的标签字段。举个例子:
CASE WHEN risk_level = 'low' THEN '低风险' WHEN risk_level = 'medium' THEN '中风险' WHEN risk_level = 'high' THEN '高风险' ELSE risk_level END AS display_risk_level
完成后在图表配置里选择这个新字段作为图例的取值字段即可,完全不会改动原始数据源。
方法2:利用图表Customize页的系列重命名(部分图表支持)
针对柱状图、折线图等常见图表类型,进入「Customize」标签页,找到「Legend」或「Series」设置模块,部分图表允许直接给每个数据系列重命名。找到对应系列后修改「Name」字段为你想要的标签即可,这种方法无需写SQL,操作更直观,但仅适用于支持该功能的图表类型。
方法3:给数据集添加计算字段(复用性更强)
如果需要在多个图表里使用同一套标签映射,可进入对应数据集的编辑页面,添加计算字段,用CASE或IF逻辑生成带自定义标签的字段。比如:
CASE WHEN status = '0' THEN '未处理' ELSE '已完成' END AS status_label
保存后,所有使用该数据集的图表都可以选择这个新字段作为图例依据,无需重复配置。
内容的提问来源于stack exchange,提问作者journo
相关产品推荐
相关产品推荐

