Highcharts在x轴标签上显示绘图值

时间:2014-05-12 14:41:30

标签: javascript highcharts

我有一个只有一个数据系列的蜘蛛网图。为了印刷的利益,我想在实际标签名称之后加入标签中绘制的值,但我似乎无法弄清楚如何这样做。

这个例子有助于解释我的意思是我在搜索中找到的条形图。代码布局类似,比我的更简洁,我很确定这个解决方案很容易转移。

labels: {
    formatter: function() {
        return this.value + ' XX.X';
    }
}

JSFiddle Here

因此,对于X轴,我试图用相关的Y值替换“XX.X”来获得标签:“Foo 29.9 | Bar 71.5 | Foobar 106.4”

我在xAxis标签格式化程序中挖掘了“this”并找到了“this.chart.series [0] .yData”中的Y数字,但是无法找到将这些关联起来的方法。每个相关的X标签,我认为这似乎是错误的做事方式。

1 个答案:

答案 0 :(得分:3)

您可以使用chart.events.loadsetCategories方法中渲染图表后执行此操作。下面的代码假定xAxis上的每个索引元素都有一个对应的数据元素。如果没有,那么你需要处理这种情况。

chart: {
    events: {
        load: function (event) {
            var cats = this.xAxis[0].categories;
            var theData = this.series[0].data;
            var newCats = [];

            for (var i = 0; i < cats.length; i++) {
                newCats.push(cats[i] + ' ' + theData[i].y)           
            }

            this.xAxis[0].setCategories(newCats);
        }
    }
}

直播 demo