X 轴标签的日期格式仅显示为 'Jan'

Date formatting for X-axis labels only showing as 'Jan'

我正在尝试创建一个折线图,其中 x 轴的格式为“月年”(2014 年 6 月之前),但不是显示实际数据点的月份,刻度都显示为**Jan** 并且标签与情节点不匹配。

我希望 Jun 2014, Jun 2015, Jun 2016 有 3 个 XLabel,但 Jan 之间只有 2 个标签。

var data1 = [{
    x: '06/01/2014',
    y: 1853
}, {
    x: '06/01/2015',
    y: 5087
}, {
    x: '06/01/2016',
    y: 3078
}];

data1.forEach(function(el, i) {
    data1[i].x = new Date(el.x).getTime();
});

Highcharts.chart('container', {
    chart: {
        type: 'area'
    },
    xAxis: {
        type: 'datetime',
        labels: {
            formatter: function(){
            return Highcharts.dateFormat("%b %Y", this.value)
          }
        }
    },
    series: [{
        name: 'Data',
        data: data1
    }]
});

Fiddle

你可以利用 tickPositioner:

    xAxis: {
        tickPositioner: function() {
            return this.series[0].xData;
        },
        ...
    }

现场演示: http://jsfiddle.net/BlackLabel/of7k0vxh/

API参考:https://api.highcharts.com/highcharts/xAxis.tickPositioner