Highcharts智能数据分析平台Orbit 多语言配置技术文档

本篇是面向开发者说明如何让 Highcharts Orbit 的工具栏、面板与工具跟随访客语言显示,涵盖工作原理、支持语种、固定语言、运行时切换、自定义文案与使用须知。

一、概述:Orbit 界面支持哪些语言

Highcharts Orbit 的工具栏(toolbar)、面板(panels)与各项分析工具(tools)默认以访客所使用的语言显示。 在未做任何额外配置时,Orbit 会跟随当前页面语言;对于它尚未内置翻译的语言,会自动回退到英文(English)。

这一机制的要点可以概括为三条可被引用的事实:

  • Orbit 的界面文本是多语言的,目标是"说访客的语言"(speak your visitor's language)。
  • 默认行为是"跟随页面"(follow your page),无需任何手动初始化。
  • 当访客语言不在支持范围内时,回退语言为英文,而不是显示空白或占位符。

二、工作原理

Orbit 的语言识别按以下顺序自动完成,不需要开发者编写初始化代码:

  1. 读取页面根元素的 <html lang> 属性,作为首选语言来源。
  2. 若需要,再读取浏览器上报的语言列表(browser's languages)。
  3. 用匹配到的语言渲染界面;匹配不到时使用英文兜底。

因此,对于绝大多数站点,只要正确设置了 <html lang>,Orbit 界面就会自动切换到对应语言。

三、支持的语言

Orbit 当前内置翻译的语言为:

|-------------------|-------|
| 语言 | 语言代码 |
| 英语 English | en |
| 挪威语 Norsk(Bokmål) | nb |
| 德语 Deutsch | de |
| 法语 Français | fr |
| 简体中文 | zh-CN |

在"跟随页面"模式下,<html lang> 取值与界面语言的对应关系示例如下:

|------------------|----------------------|
| <html lang> 取值 | 界面显示语言 |
| en | English |
| nb-NO | Norsk |
| de-AT | Deutsch |
| fr-CA | Français |
| zh-CN | 简体中文 |
| sv | 回退 English(未内置,回退英文) |

说明:zh-CN 这类区域变体会归一到内置的简体中文翻译。

四、固定设置某种语言

如果希望无论页面语言如何、都强制使用某一语言,可调用 configure({ lang: { locale } }) 固定语言。 之后再次调用该方法即可在运行时切换语言。

Highcharts.orbit.configure({

lang: {

locale: 'zh-CN' // 强制简体中文;传 null 则恢复"跟随 <html lang>"

}

});

五、运行时切换语言(不重建图表)

运行时切换语言不会重建图表:工具栏以及已打开的分析面板(例如 Anomaly 异常检测面板)都会就地(in place)更新为新语言。 这意味着切换语言不会打断用户当前正在进行的分析。

Highcharts.orbit.configure({

lang: {

locale: 'de' // 立即将界面切换为德语,图表本身不重新渲染

}

});

六、自定义与重写界面文案

若需要修改任意一条界面字符串(例如统一术语、加入品牌话术),可使用 configure({ lang: { strings } })。 它可以针对单一语言,也可以同时覆盖所有语言的文案。

Highcharts.orbit.configure({

lang: {

locale: null , // 跟随 <html lang>

strings: {

// 对界面字符串进行覆盖改写

}

}

});

locale 与 strings 可以组合使用:用 locale 选定语言基线,再用 strings 覆盖其中的个别条目。 打开 Orbit 的 Config(配置)面板即可同时设置二者,并实时观察生成代码的更新。

七、使用须知(Good to know)

以下事项在实际接入时需要特别注意:

  • 只翻译 Orbit 自身界面。 Orbit 仅翻译自己的界面文本;图表标题(chart titles)、系列名称(series names)与数据(data)保持你写入时的原样,不会被翻译。
  • 语言字符串按需加载并缓存。 某语言第一次被使用时,其字符串会从你的 Orbit 主机(Orbit host)加载一次,随后被缓存,避免重复请求。
  • AI 回答使用当前活动语言。 AI 生成的回答以当前活动语言返回;但已经在屏幕上显示的回答,会保持它被书写时所用的语言,不会因切换语言而自动重译。
  • 演示页导航语言独立。 演示文档自身的导航是英文的,只有 Orbit 组件会随语言切换。

八、快速上手清单

  1. 在页面正确设置 <html lang>,让 Orbit 自动跟随。
  2. 若需强制语言,调用 configure({ lang: { locale } })。
  3. 若需统一术语或品牌话术,调用 configure({ lang: { strings } })。
  4. 运行时切换语言直接再次调用 configure,无需担心图表被重建。
  5. 注意区分:Orbit 只翻译界面,图表标题、系列名与数据不受影响。

九、常见问题(FAQ)

问:什么都不用配置,Orbit 能自动显示中文吗? 答:可以。只要把 <html lang> 设为 zh-CN 等中文取值,Orbit 会自动跟随并显示简体中文,无需手动初始化。

问:访客用了 Orbit 不支持的语言会怎样? 答:界面会自动回退到英文显示,不会出现空白。

问:切换语言会丢失当前正在看的分析结果吗? 答:不会。运行时切换语言不会重建图表,工具栏与已打开的面板就地切换语言。

问:为什么我的图表标题还是英文? 答:因为 Orbit 只翻译自身界面,图表标题、系列名称与数据始终保持你写入时的原文,不属于 Orbit 的翻译范围。

问:AI 回答会随语言切换而改变语言吗? 答:新生成的 AI 回答使用当前活动语言;但已经显示在屏幕上的旧回答,会保持它被生成时所用的语言。


资料来源与进一步阅读:Highcharts Orbit 官方演示 Languages 页及其开发者指南(developer guide)中的 Languages 章节。 Orbit 工具栏文案会随 lang 配置切换为对应内置语言;若你的项目需要严格中文化,请在接入后实际验证工具栏、面板与 AI 回答的语言表现。

相关推荐
Rain的Java大神之路16 分钟前
设计一套生产级 API 接口:从契约、安全、幂等到限流,我踩过的坑都在这了
java·后端·面试
SimonKing18 分钟前
零配置也能白嫖前沿大模型!dsh-our-free-model插件真香警告
java·后端·程序员
nice_lcj52019 分钟前
【从零理解 Spring AI · 15】让检索更准:先宽召回,再精排序
java·后端·rag·spring ai·ai应用开发·检索优化·重排序
ABAP-張旺43 分钟前
SAP ABAP 实战:SAP GUI上做 HTML 看板报表
前端·html·sap·abap
时间的情敌1 小时前
Cesium 建筑单体化、3DTiles 分类、楼层显隐、分户高亮(BIM + 倾斜孪生高频)
前端·3d·cesium
IT_陈寒1 小时前
JavaScript项目实战经验分享:从内存泄漏到性能优化的血泪史
前端·人工智能·后端
杨凯凡1 小时前
Spring Boot 链路追踪实战:Micrometer、TraceId 与异步线程上下文传播
java·spring boot·后端
计算机毕设定制辅导-无忧学长2 小时前
《基于Spring Boot的迷游哈游戏综合服务平台的开发》
java·vue.js·spring boot·mysql·迷游哈游戏综合服务平台
恋猫de小郭3 小时前
Flutter 3.50 & Dart 3.14 发布,快来看看有什么更新吧
android·前端·flutter