score:5

Accepted answer

You should not give the slices name through xAxis' categories field. Slice names should be included in the data object. Try this:

sliceNames = [];
$('tbody th', table).each(function (i) 
{
    sliceNames.push(this.innerHTML);
});

options.series[j - 1].data.push({name: sliceNames[i - 1], y: parseFloat(this.innerHTML)});

You don't need categories object at all, just populate the slices name into any array variable and use that while pushing data.

score:1

I'm pretty new to HighChart, but couldn't you just format the output of your tooltip or dataLabel using something like this...

this.series.name = this.series.chart.options.xAxis[0]
                       .categories[this.series.processedYData.indexOf(this.y)];

Related Query

More Query from same tag