【问题标题】:Is it possible to dynamically refresh a HighCharts drilldown?是否可以动态刷新 HighCharts 向下钻取?
【发布时间】:2017-06-04 13:29:01
【问题描述】:

我想刷新一个 HighCharts Drilldown。为此,我以通常的方式设置了一系列和向下钻取。

填充钻取第一级的代码很好,但第二级没有更改为 ([10,5,1])。代码是

 $('#button').click(function() {
    chart.series[0].setData([10],[10,5,1] ); 
 });   
});

这里有一个 jsfiddle

https://jsfiddle.net/bd1v6tew/3/

【问题讨论】:

    标签: javascript jquery highcharts


    【解决方案1】:

    您可以通过chart.options.drilldown.series 访问/覆盖数据。例如:

     $('#button').click(function() {
            // force highchart to close a open drilldown
            // otherwise the data will not be updated, or 
            // chart will not work any longer
            if (chart.drilldownLevels.length > 0) {
                chart.drillUp();
            }
            chart.series[0].setData([10]); 
            // structure to replace the old data
            var newdrilldown = [{
                id: 'item1',
                data: [
                    {
                        name: 'Condition 1',
                      y: 10
                    },
                     {
                        name: 'Condition 2',
                      y: 5,
                    },
                    {
                        name: 'Condition 3',
                      y: 1,
                    }]
            }];
            // here you access your drilldown
            chart.options.drilldown.series = newdrilldown; 
    });
    

    如果您不想替换完整的块,而只想替换内部的数据,请使用 chart.options.drilldown.series[0].data = [] 等等。

    您更新的fiddle is here

    【讨论】:

    • 刷新数据后,下钻不再起作用?
    • @user813813 我想我找到了你的意思,如果你添加/操作数据以防向下钻取打开,highcharts 将停止工作 - 你必须先关闭它,查看更新的答案和小提琴跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多