Highcharts:用逗号格式化所有数字?

Highcharts: Format all numbers with comma?

我正在使用 Highcharts,我想用逗号分隔的千位来格式化图表中任何位置显示的所有数字(工具提示、轴标签...)。

否则,默认的工具提示和标签很棒,我想让它们完全一样。

例如,在此图表中,数字应为 2,581,326.31,但其他方面完全相同。

我该怎么做?

我尝试添加:

    tooltip: {
        pointFormat: "{point.y:,.0f}"
    }

但这去掉了工具提示中漂亮的圆圈和系列标签 - 我想保留它。理想情况下,我更愿意使用一个选项来设置整个图表的全局数字格式。

这可以通过 thousandSep (API) 全局选项设置。

Highcharts.setOptions({
    lang: {
        thousandsSep: ','
    }
});

参见this JSFiddle example

如果您想显示不带逗号和空格的数字。

例如。默认情况下 9800 显示为 9 800。

如果你想让9800显示为9800

您可以在工具提示中试试这个:

    tooltip: {
     pointFormat: '<span>{point.y:.f}</span>'
   }

这种方式对我有用。

我在 yAxis 选项中配置了。

yAxis: {
  labels: {
    formatter: function() {
        return Highcharts.numberFormat(this.value, 2);
    }
  }
}

这种方式适合我。

我使用 Angular 10,我为工具提示和 yAxis 做了这个。

对于 yAxis 使用 numberFormat:

 labels: {
              format: '{value}',
              style: {
                color: Highcharts.getOptions().colors[0]
              },
              formatter: function() {
                return Highcharts.numberFormat(this.value, 3);
            }
            },

对于工具提示:

{point.y:.f}