Quicksight中如何根据语言参数设置可视化图表动态标题?
Quicksight仪表盘动态多语言标题/标签替代方案
不需要复制多份仪表盘,可直接通过以下3种常用方案实现需求:
- 方案1:隐藏原生标题,用绑定计算字段的单值可视化组件替代
关闭可视化图表的原生标题、坐标轴标签等固定文本展示,在对应位置放置无样式的单值可视化组件。提前在数据集中创建多语言翻译计算字段,示例逻辑如下:
将该计算字段绑定到单值组件,隐藏组件的坐标轴、图例、边框等多余元素,即可完全模拟原生标题效果,且会随ifelse( $language = 'zh', '月度销量趋势', $language = 'en', 'Monthly Sales Trend', $language = 'ja', '月間販売動向', '未知语言' )language参数自动切换内容。 - 方案2:通过计算参数实现原生标题模板插入
为每个需要翻译的文本创建对应不同语言的静态参数,例如chart1_title_zh、chart1_title_en,再创建一个动态计算参数,逻辑如下:ifelse($language = 'zh', $chart1_title_zh, $language = 'en', $chart1_title_en, $chart1_title_ja)
直接在原生标题中插入该计算参数即可,写法为<<$dynamic_chart1_title>>,无需额外添加组件。 - 方案3:复用现有多语言数据集实现低维护成本翻译
你现有已经包含所有支持语言对应行的数据集,可在该数据集中新增translation_key字段,为每个需要翻译的标题/标签分配唯一key,例如chart1_title、chart1_x_label。使用该数据集创建单值组件时,添加两个过滤条件:language字段等于<<$language>>参数translation_key字段等于对应需要的翻译key
直接取数据集的翻译值字段作为单值组件内容即可,新增语言时仅需要在数据集中补充对应行,无需修改仪表盘配置。
内容的提问来源于stack exchange,提问作者barnesm999
相关产品推荐
相关产品推荐

