score:1

Accepted answer

As @Core972 noticed, you should use 'Grouped Categories' plugin. You can create new format of categories, based on existing ones and update axis in this way:

  render: function() {
    if (redrawEnabled) {
      var xAxis = this.xAxis[0],
        categories = xAxis.names,
        year = 2015,
        months = [],
        newCategories = [];

      Highcharts.each(categories, function(name, i) {
        months.push(name);

        if (name === 'Dec') {
          newCategories.push({
            name: year,
            categories: months.slice()
          });
          year++;
          months.length = 0;
        }
        if (i === categories.length - 1) {
          redrawEnabled = false;
          xAxis.update({
            categories: newCategories
          });
          redrawEnabled = true;
        }
      });
    }
  }

Live demo: https://jsfiddle.net/BlackLabel/vnLy3pwq/


Related Query

More Query from same tag