我试图通过引入dc.js重构一些我编写的自定义d3代码,以渲染一系列交叉过滤器驱动的图表。
我的主要问题是,我有一些dc.js不支持的图表类型(例如,Sunburst分区),并且我试图弄清楚如何与dc.js图表组一起呈现它们。
过滤单个dc.js图表将自动呈现/重绘属于同一chartGroup的所有其他图表。是否有可能以某种方式挂接到该全局重新渲染事件,以便我可以同时重新绘制非DC图表?
我知道每个图表上都有监听器,例如,chart.on("postRender", function(chart){...})
但是似乎没有一种方法可以重新渲染一组图表。是否有一个好的方法可以实现这一目标?
执行此操作的“正确”方法是使用dc.registerChart在dc注册表中注册图表
你只需要实现.redraw()
和.render()
一些对象(图表或包装),并通过该对象作为第一个参数。
将其与应响应的图表放在同一组(第二个arg)中。
render()从头开始创建dom元素,而redraw()在数据更改时更新它们。
根据图表的使用方式,您可能还必须实现.filterAll()和.anchorName()
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句