nvd3多栏图表状态错误地更新传奇切换?

时间:2016-01-02 22:00:00

标签: javascript d3.js charts nvd3.js

TL; DR:尝试根据控制台日志确定this nvd3多任务图的单选按钮处于什么状态 - 即如何可靠地确定当前向用户显示哪些数据流?< / p>

长版:

我正在试图弄清楚哪些数据流/数组在nvd3多栏图中显示,以便我可以使用与这些流相关的信息更新其他DOM节点。唯一的麻烦是chart.state似乎正在返回它应该的反面:如果我将流关闭“关闭”,chart.state.disabled对于该流是true ...除了看似第一次切换时,当所有chart.state.disabled[i]流设置为false时......该属性的整个行为看起来似乎不能正常运行。这是一个错误还是我不明白它应该如何使用?

一些代码用于记录三个流的状态,例如:

chart.legend.dispatch.on("legendClick", function() {
    var state = chart.state;
  console.log(state.disabled[0] + "," 
    + state.disabled[1] + ","
    + state.disabled[2]);
});

1 个答案:

答案 0 :(得分:1)

嗯,通常情况下,我会挖掘半小时,无法使其工作,在SO上发布,然后尝试不同的方法立即起作用:

chart.dispatch.on("stateChange", function(e){
    console.log(JSON.stringify(e.disabled);
}

所以我认为ledgendClick事件的错误并没有正确更新图表状态。