【问题标题】:Highchart drillup issueHighchart 钻取问题
【发布时间】:2016-05-06 13:41:28
【问题描述】:

我正在尝试使用自己的按钮进行深入研究,但遇到了困难。

JSfiddle with multi drilldown

$( "#backbtn" ).click(function(e) {          
    setChartC(name, categories, data, '', 1);          
    alert(chartC.xAxis[0]);
});

我有等级,如何访问drilldown.level

exporting: {
         enabled: true,
         buttons: {
            customButton: {
                text: 'Go Back',
                onclick: function () {
                        var drilldown = chartC.drilldown;

                        alert(chartC.level);
                }
            }
        }

当我向下钻取时,似乎无法访问该级别。有什么办法可以访问level

【问题讨论】:

  • 你考虑过为 Highcharts 使用drilldown.js 模块吗?见examples。这比构建您自己的向下钻取逻辑要容易得多。它带有用于上钻操作的内置按钮:)
  • 是的,但是系列和数据结构不同?
  • 结构由你决定,我想。我的意思是,在drilldown.js Highcharts 中,主系列和所有钻取系列都需要相同的结构。

标签: javascript jquery highcharts


【解决方案1】:

您可以使用本机 Highcharts 后退按钮。可以看一个例子here(链接作者here)。

但是,如果您想添加自定义按钮,我不相信 Highcharts 有一个简单的方法。如果你发现我错了,请纠正我。

因此,要添加自定义后退按钮,您需要跟踪当前显示的图表是什么。知道当前是什么,您可以查看字典以查找它是哪个级别。要获取当前图表,可以跟踪点击事件:

plotOptions: {
    column: {
        point: {
            events: {
                click: function () {
                    console.log("I'm at: " + this.drilldown.name)
                }
            }
        }
    }
}

关于自定义后退按钮,请看JSFiddle

添加此 HTML:

<input type="button" id="backbtn" value="Back">

还有这个 JS:

$("#backbtn").click(function(e) {   
    setChart(name, categories, data);
});

由于变量namecategoriesdata是用顶层图表的值定义的,点击此按钮将恢复到顶层。

如果您创建一个包含所有图表及其名称/类别/数据信息的树对象,并且如果您知道当前图表,则可以设置图表及其父数据以实现自定义返回按钮。

【讨论】:

  • 谢谢,这正是我想要做的,但似乎无法得到 Drilldown.level?它回到开始状态。
  • 您可以创建一个级别属性,但不幸的是,您仍然需要单独跟踪对象。我现在找不到更简单的方法。
  • 是否可以在 Jfiddel 中显示示例?
  • 要在 Highcharts 中添加按钮,请使用.. chart.renderer.button() ;) 不是 API 的一部分,但请参阅 source code。例如chart.renderer.button("Drillup", 100, 100, function() { console.log("test"); });
  • @Pawel Fus:我们把代码放在哪里? 'chart.renderer.button()' 例如:哪个事件?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多