首页 > 解决方案 > 单击旭日形图中的子元素,向下钻取到父元素

问题描述

我在 Highcharts 中有一个旭日形图,我想要它,以便当您单击“子”元素时,它会放大/向下钻取到父元素。参见图片以获得视觉解释。在此处输入图像描述

我可以像这样对我想要的“财务”目标进行硬编码:

mychart.series[0].data[1]

基于我的数据结构。我在网上看到我可以为此目的使用 doDrilldown() 函数,但它根本不起作用。我花了几个小时在这上面。

我还尝试在父元素上触发“单击”事件,但无济于事。

标签: javascripthighcharts

解决方案


经过数小时的搜索,我终于找到了适合我的解决方案!

我不得不手动浏览 Highcharts 的 js 文件以获取 sunburst 以最终找到此功能:

chart.series[0].setRootNode(drillId, true, {trigger: 'click'});

就我而言,“财务”的 DrillId 是“财务”。奇迹般地,这行得通。

无需硬编码,您可以像这样从单击事件中简单地获取父级的 DrillId(在图表系列本身上设置):

series: [{
    type: 'sunburst',
    data: data,
    events: {
              click: function(event) {
                //console.log(event.point);
                var id = event.point.id;
                var parent = event.point.parent;  // also the drillId
                
                // ... do logic here
                
              }          
            },
     // and so on

推荐阅读