Highcharts-如何格式化yAxis标签以使其具有一位数字?

问题描述 投票:0回答:1

我正在使用Highcharts来显示API中的数据。我想将yAxis标记为“千”,并将数字显示为一位。例如,我现在的图形标签为2k, 4k, 6k, 8k, 10k,我想调整格式以仅显示2,4,6,8,10

我目前正在使用formatter:function () { }返回我以前显示的2k,4k,6k... 2000,4000,6000...,我在解决如何正确格式化数字以显示一位数字时遇到了问题。

我的预期结果是显示在左侧的yAxis标签显示2,4,6,8,10

这里是我的图表的jsfiddle

这也是我的代码:

Highcharts.chart('container', {
    chart: {
        type: 'line'
    },
    title: {
        text: 'Monthly Average Temperature'
    },
    subtitle: {
        text: 'Source: WorldClimate.com'
    },
    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },
    yAxis: {
    labels: {
                formatter: function () {
                    return this.axis.defaultLabelFormatter.call(this);
                }
            },
        title: {
            text: 'Thousands'
        }
    },
    plotOptions: {
        line: {
            dataLabels: {
                enabled: false
            },
            enableMouseTracking: false
        }
    },
    series: [{
        name: 'Tokyo',
        data: [3625, 4320, 4055, 4852, 5120, 6251, 7852, 8000, 9102, ]
    }, {
        name: 'London',
        data: [2210, 3152, 3852, 4102, 4300, 4657, 6521, 7022, 7982]
    }]
});
javascript highcharts
1个回答
0
投票

您可以将label.formatter回调与如下所示的逻辑一起使用以显示所需的格式。

演示:https://jsfiddle.net/BlackLabel/c0e2jwa6/

  yAxis: {
    labels: {
      formatter() {
        return this.value / 1000
      }
    },
    title: {
      text: 'Thousands'
    }
  },

https://api.highcharts.com/highcharts/yAxis.labels.formatter

© www.soinside.com 2019 - 2024. All rights reserved.