Highcharts 数据标签位置-与图表数据相反(正值和负值)

Highcharts 数据标签位置-与图表数据相反(正值和负值),highcharts,Highcharts,我正在创建一个带有正负值的条形图,并显示每个数据点的xAxis(类别名称)(请参见Fiddle:) 这里是我的绘图选项,但我不确定我还需要什么(实际上只是把这段代码放在这里,因为我需要包含一些代码来链接到JSFIDLE) 我正在尝试放置标签,使其与图表上每个条形图的开头对齐。我希望得到我想要的结果: 任何帮助都将不胜感激。我认为这将有助于您: 以下是更多信息: 您必须使用X值: plotOptions : { series : {

我正在创建一个带有正负值的条形图,并显示每个数据点的xAxis(类别名称)(请参见Fiddle:)

这里是我的绘图选项,但我不确定我还需要什么(实际上只是把这段代码放在这里,因为我需要包含一些代码来链接到JSFIDLE)

我正在尝试放置标签,使其与图表上每个条形图的开头对齐。我希望得到我想要的结果:


任何帮助都将不胜感激。

我认为这将有助于您:

以下是更多信息:

您必须使用X值:

plotOptions : {
                series : {
                    dataLabels: {
                        formatter: function() {
                            return this.x
                        },
                        x: ?,
                        enabled: true
                    }
                }
            }

您可以迭代每个datalabel,并使用translate()函数移动SVG元素

$.each(chart.series[0]。数据,函数(i,数据){
位置=chart.yAxis[0].toPixels(0);
控制台日志(数据);
如果(数据y<0)
位置-=10;
其他的
位置-=70;
data.dataLabel.attr({
x:位置
});
});
plotOptions : {
                series : {
                    dataLabels: {
                        formatter: function() {
                            return this.x
                        },
                        x: ?,
                        enabled: true
                    }
                }
            }
$.each(chart.series[0].data,function(i,data){

        position = chart.yAxis[0].toPixels(0);

        console.log(data);
        if(data.y < 0) 
            position-=10;
        else
            position-=70;

        data.dataLabel.attr({
            x:position
        });
    });