Accepted answer

the stack option doesn't refer to the category index as you expect in your example.

you use stack: 'a' and stack: b' and have one y value for each series. it means that two stacked columns are grouped for one category.

take a look at the api reference and its demo:

to achieve a stacked column for each category you need to parse mes to the number (timestamp) and pass it as an x value.

var series = [];
for (var i = 0; i < data.length; i++) {
  mes = new date(data[i][0]).gettime() + 60 * 60 * 1000,
  total = data[i][1];
  categoria = data[i][2];  

    name: categoria,
    data: [{x: mes, y: total}],
    datalabels: {
      enabled: true,

then set your xaxis.type to datetime and change label format.

  xaxis: {
    type: 'datetime',
    labels: {
      format: '{value:%y-%m}'

example demo:

Related Query

More Query from same tag