我有一个“图表”,它是一个用于过滤其他图表的输入字段(过滤器只考虑包含输入到字段中的文本的数据。
它工作正常,但是当你想要过滤一个单词时(例如“test”,它将过滤t,然后te,然后测试,然后测试)并重新绘制图形4次,感觉有点迟钝,特别是在智能手机上。
有没有办法延迟绘制图表几毫秒,以确保没有输入额外的字母?
理想情况下,我想过滤每个字母并绘制快速图形(例如显示dataCount)并在绘制其他字母之前稍等一下(例如,气泡图或似乎更多cpu绑定的线图)
有一种简单的方法吗?
相关问题:将输入字段“过滤器图形”作为新图形类型添加到直流中是否有意义?
答案 0 :(得分:1)
对于问题的第一部分,您正在寻找的功能称为“限制”。有一个implementation of it in underscore和lodash,以及其他地方。
(请勿使用dc.events.trigger
,because it's a debounce。)
至于绘制一些图表,你可以让你的“过滤器图形”设置crossfilter维度过滤器,然后只重绘一些图表,然后等待限制事件重绘其余图表,因为{ {1}}只是迭代所有图表。
但是,没有内置任何内置来管理这些类型的子组,因此您必须保留自己的图表列表。
即。类似的东西(可能在这里修改d3和jquery语法,但你明白了):
redrawAll
是的,在dc.js中有一个像这样的简单输入小部件会很棒 - 但我不知道如何以一般方式处理快/慢重绘。它可以将一些智慧归结为答案like the responses to this issue。