了解与交叉过滤对象的直流交互
尽管我可以编写dc.js应用程序,但我仍不明白dc如何使用交叉过滤对象,即各种图表中的维度和组。 当我们点击一个图表元素时,例如饼图切片,我相信dc在维度上应用了过滤器,但是它是否也在操纵交叉过滤器对象? 任何人都知道任何解释dc如何与交叉过滤器对象交互的文档/文章? 我知道http://www.codeproject.com/Articles/693841/Making-Dashboards-with-Dc-js-Part-Using-Crossfil这对初学者非常有用,但它并没有深入探讨这个特定主题。
例如,我有这个直流图表:http://bit.ly/1nStSh3
基本上,数据集具有对象名称(其中4个,P,Q,S,T)及其各种日期的大小。 这两个饼图分别显示日期和对象的大小。 有一张折线图显示了一段时间内的数据增长情况。 现在,当我单击第二个图表(即对象名称)时,折线图和第一个饼图会自动调整,但是当我单击第一个饼图时,折线图不会更改。
crossfilter文档和dc.js FAQ涵盖了您的特定问题:维度不会观察其自己的过滤器,而只会观察其他维度上的过滤器。
要让图表彼此响应,请创建维度的副本(使用相同的参数构造另一个维度),并将图表放在不同的维度上。 (还有一些工作正在进行,以反映共享相同维度的图表之间的刷牙/过滤状态。)
至于你的大问题,不,没有关于我知道的dc.js和crossfilter之间的交互的文档。 作为dc.js的主要维护者(但不是原作者),我希望在下一年编写这些文档。
实际上它没有什么神奇之处:图表只是更新维度过滤器,然后在其组中的图表上触发重绘。 每张图表中的d3转换使它看起来更有趣。
链接地址: http://www.djcxy.com/p/32701.html