获取高图滚动条的左侧和顶部位置

时间:2018-06-22 07:36:37

标签: angularjs charts highcharts highcharts-ng

我想在高图上放置自定义标签,该标签应放在左侧  滚动条的侧面。如何获得滚动条的顶部和左侧位置??

我用以下代码放置了标签

chart.renderer.text('<span style="font-weight:600;"> 1-21 </span>', 20, 120)
        .css({
            color: 'green',
            fontSize: '12px'
        })
        .add();

2 个答案:

答案 0 :(得分:1)

您可以使用chart.xAxis[0].scrollbar.group.translateXchart.xAxis[0].scrollbar.group.translateY获取滚动条的位置,例如:https://codepen.io/anon/pen/KeBxNj?editors=1010

摘要:

var chart = Highcharts.chart('container', {
  chart: {
    type: 'bar',
    marginLeft: 150,
    events: {
      load: function () {
        var scrollbar = this.xAxis[0].scrollbar,
            bbox;
        // Render:
        this.customLabel = this.renderer.text('<span style="font-weight:600;"> 1-21 </span>', 0, 0).attr({
          zIndex: 5
        }).add();
        // Get bbox
        bbox = this.customLabel.getBBox();

        // Position label
        this.customLabel.attr({
          x: scrollbar.group.translateX - bbox.width,
          y: scrollbar.group.translateY + bbox.height
        });
      }
    }
  },
  ...
});

答案 1 :(得分:0)

您可以使用chart.plotWidth + chart.plotLeft - 25确定滚动条的左侧位置。另外,可以使用chart.plotTop + 10获得最高排名。 数值只是顶部和左侧的填充。

请查看此代码笔。 https://codepen.io/samuellawrentz/pen/eKjdpN?editors=1010

希望这会有所帮助:)