dc.js – 监听图表组渲染

我试图重构一些自定义d3代码,通过引入dc.js来渲染一系列交叉过滤驱动的图表。

我的主要问题是,我有一些不支持dc.js的图表types(例如Sunburst分区 ),我试图找出如何将它们与dc.js图表​​组结合使用。

过滤单个dc.js图表​​将自动呈现/重绘属于同一个chartGroup的所有其他图表。 是否有可能以某种方式挂钩到全局重新渲染事件中,以便我可以同时重新绘制非直方图?

我知道每个图表上都有监听器,例如chart.on("postRender", function(chart){...})但似乎没有办法挂钩重新渲染一chart.on("postRender", function(chart){...})表。 有没有一个好的模式可以完成?

One Solution collect form web for “dc.js – 监听图表组渲染”

这样做的“正确”方法是在dcregistry中用dc.registerChart注册图表

https://github.com/dc-js/dc.js/blob/master/src/core.js#L91

不幸的是,这个东西目前还没有logging,但实际上这里有非常轻的耦合。 您只需要在某个对象(图表或包装器)上实现.redraw().redraw() ,并将其作为第一个参数传入。

把它放在同一组(第二个参数)和它应该回应的图表中。

render()从头创builddom元素, redraw()在数据更改时更新它们。

看起来你也可能需要实现一个虚拟的.filterAll()但这是一个疏忽。

我添加了一个问题来logging这些东西:

https://github.com/dc-js/dc.js/issues/676

如果遇到麻烦,请在这里或在这里发表评论。

编辑:这是现在logging,感谢茉莉花赫格曼。 请参阅chartRegistry文档 。

  • 我如何重置或重写IE浏览器的CSSfilter?
  • 在JavaFX中build立数字TextField的推荐方法是什么?
  • Python的HTML清洁/清除/filter
  • 如何从包含n * NA的数据框中删除行
  • 使用jQuery查找元素ID包含特定文本的所有元素
  • 如何在春季安全编写自定义filter?
  • AngularJS自定义filterfunction
  • 在Scala中的filter,地图,flatMap期间如何轻松地将一个集合types转换为另一个集合types?
  • 如何在ASP.NET Web Api中testingAction Filter?
  • 如何根据任意条件函数过滤字典?
  • 如何仅在主题行开始时创buildGmailfiltersearch文本?