我的 areaspline 图表的 Y 轴值高达大约 6000。Highcharts 自动将我的 Y 轴上的“000”部分更改为“k”。
由于我是法国人,并且该网站应该使用相同的语言,所以这个“k”缩写在我的情况下没有意义,我希望有一个随意的“000”显示而不是它。
这可能吗?如何?
我的 areaspline 图表的 Y 轴值高达大约 6000。Highcharts 自动将我的 Y 轴上的“000”部分更改为“k”。
由于我是法国人,并且该网站应该使用相同的语言,所以这个“k”缩写在我的情况下没有意义,我希望有一个随意的“000”显示而不是它。
这可能吗?如何?
您可以通过以下方式显式覆盖withlang.numericSymbols*
来null
执行此操作defaultOptions
Highcharts.setOptions({
lang: {
numericSymbols: null //otherwise by default ['k', 'M', 'G', 'T', 'P', 'E']
}
});
文档内容如下
数字符号:
Array<String>
用于缩短轴标签中高数字的公制前缀。用 null 替换任何位置都会导致写入完整的数字。将 numbericSymbols 设置为 null 会完全禁用缩短。默认为 ['k', 'M', 'G', 'T', 'P', 'E']。
**从 v1.2.0 (2012-08-24) 正式提供
这在 v1.2.0 之前将不起作用,因为后缀是硬编码的。*
(应该适用于支持格式化程序的所有版本)
yAxis.labels.formatter
按原样使用并返回值
yAxis: {
labels: {
formatter: function () {
return this.value;
}
}
}
禁用轴值上的公制符号 | Highchart & Highstock (v1.2+) @ jsFiddle
禁用轴值上的公制符号 | Highchart & Highstock(旧版本)@ jsFiddle
根据@Jugal-Thakkar 的回答,我实现了:
numericSymbols: [' × 10³', ' × 10⁶', ' × 10⁹', ' × 10¹²', ' × 10¹⁵', ' × 10¹⁸'],
上标 0 和 4-9 仅为 UTF-8 字符。您需要指定支持这些的字体,否则您将遇到字体替换问题,如为什么上标数字的 Unicode 字符的显示高度不同?.
我用:
font-family: Lucida Sans Unicode, Arial Unicode MS, Cambria, Calibri, Consolas;
此外,我宁愿使用 1.8 × 10¹⁴ 而不是 180 × 10¹²,但要好于难以阅读的 180000000000000。