Highcharts-svg与数字

Highcharts-svg与数字,highcharts,Highcharts,我一直在试着对装载的图表进行一些不寻常的操作。 使用svg渲染器,我创建了包含文本元素的组元素。 然后,我计算了每个组元素的高度(标题、学分),现在,我正试图根据这些计算结果更新spacingTop/spacingBottom。(请不要问我为什么不使用本机highcharts标题和学分:) 另外,我需要扩展每个Y轴网格线,使它们从零开始。 但是,当我这样做时,我看到我的图表没有在浏览器中扩展这些网格线,而是在导出的svg中正常工作。有人能解释一下为什么会发生这种情况,以及我如何制作并在浏览器中显

我一直在试着对装载的图表进行一些不寻常的操作。 使用svg渲染器,我创建了包含文本元素的组元素。 然后,我计算了每个组元素的高度(标题、学分),现在,我正试图根据这些计算结果更新spacingTop/spacingBottom。(请不要问我为什么不使用本机highcharts标题和学分:) 另外,我需要扩展每个Y轴网格线,使它们从零开始。 但是,当我这样做时,我看到我的图表没有在浏览器中扩展这些网格线,而是在导出的svg中正常工作。有人能解释一下为什么会发生这种情况,以及我如何制作并在浏览器中显示

提前谢谢你! 当我不使用chart.update函数时,网格线会以数字形式延伸

以下是简单的实现: 请下载png | | svg以比较浏览器版本和图像

chart: {
        events: {
        load: function(){
          const chart = this;
          const {yAxis} = chart;

          const [headingsHeight, creditsHeight] = [50, 60];

          chart.update({
            chart: {
              spacingTop: 10 + headingsHeight,
              spacingBottom: 11 + creditsHeight,
            },
          });

          const { gridGroup } = yAxis[0];

          const gridLines = findEls(gridGroup, 'path');

          [...gridLines].forEach(extendGridLine);

      }
      }
    },

这是由更新动画引起的,它使代码异步。您可以通过以下方式禁用它:

    chart.update({
      chart: {
        spacingTop: 10 + headingsHeight,
        spacingBottom: 11 + creditsHeight,
      },
    }, true, false, false);

现场演示:

API参考: