如果xUnits不是dc.units.ordinal,则条形图中的可单击条形图

时间:2015-01-20 22:49:12

标签: javascript dc.js

dc.js仅允许可点击的条形图用于序数值 来自dc.js:

if (_chart.isOrdinal()) bars.on("click", _chart.onClick);

我尝试了以下内容并获得了Uncaught TypeError:无法读取属性' isFiltered'在dc.js中未定义

chart.renderlet(function(_chart){ _chart.selectAll("rect.bar").on("click", _chart.onClick); });

https://github.com/dc-js/dc.js/issues/168建议实现自定义onClick处理程序,但我不确定它的内容应该是什么。

1 个答案:

答案 0 :(得分:2)

我一直听到这个错误,最后跟踪了它。使用.on("click", _chart.onClick)的建议通常很好,但由于某种原因条形图的onClick版本变为私有,它被打破了。 (有关详细信息,请参阅上述问题中的评论。)

两种可能的解决方案:

  1. 像这样定义你的渲染(hacky变通方法): chart.renderlet(function(_chart){ _chart.selectAll("rect.bar").on("click", function(d) { _chart.onClick(d.data); }); });
  2. 更新到dc.js 2.0.0-beta.4,修复此问题,您发布的原始代码应该有效。