将 Highcharts 标签定位到右侧

Position Highcharts label to right side

我有一个带有自定义标签的基本图表,例如:

labels: {
  items: [{
    html: 'Testing Label',
    style: {
      left: '50px',
      top: '50px'
    }
  }]
}

这可行,但我想从右侧放置标签,我试过这样做:

style: {
  right: '50px',
  top: '50px'
}

但这行不通...

JsFiddle link: http://jsfiddle.net/0ze2u47h/3/

chart.labels 似乎不支持 right 属性。对于更复杂的配置,您可以使用 SVGRenderer:

呈现标签
  chart: {
    events: {
      load: function() {
        var chart = this,
          renderer = chart.renderer;

          var label = this.renderer.label('Test label', null, 100).add();
          label.attr({
            x: chart.plotWidth + chart.plotLeft - label.width
          });  
      }
    }
  }

现场演示: http://jsfiddle.net/kkulig/aob1e197/

通过renderer(而不是通过构造函数选项)呈现标签的优点是您可以访问已创建图表和标签的参数(chart.plotWidthchart.plotLeftlabel.width 在这种情况下)。


API参考:https://api.highcharts.com/class-reference/Highcharts.SVGRenderer#label