使用函数无效的数据交叉过滤器(Crossfilter of data not working using function)
我有一个id和距离的数据,如下所示
var data=[ {"id":1,"distance":0.506}, {"id":2,"distance":0.506}, {"id":3,"distance":0.506}, {"id":4,"distance":0.506}, {"id":5,"distance":0.506}, {"id":6,"distance":0.106}, {"id":7,"distance":0.0065}, {"id":8,"distance":0.106}, {"id":9,"distance":0.106} ]我想对数据进行交叉滤波,以便在滤波器之后只剩下距离> 0.2的数据。 我正在使用以下代码来执行交叉过滤器。 但它不起作用。
var ndr=crossfilter(data); var fild=ndr.dimension(function(d){if(d.distance>=0.2){return d;}}); data=fild.top(Infinity);所以输出数据应该如下
var filtereddata=[ {"id":1,"distance":0.506}, {"id":2,"distance":0.506}, {"id":3,"distance":0.506}, {"id":4,"distance":0.506}, {"id":5,"distance":0.506} ]任何人都可以帮我解决问题吗?
I have a data with id and distance like the following
var data=[ {"id":1,"distance":0.506}, {"id":2,"distance":0.506}, {"id":3,"distance":0.506}, {"id":4,"distance":0.506}, {"id":5,"distance":0.506}, {"id":6,"distance":0.106}, {"id":7,"distance":0.0065}, {"id":8,"distance":0.106}, {"id":9,"distance":0.106} ]I want to crossfilter the data so that only the data whose distance is > 0.2 remains after the filter. I am using the folllowing code to do the crossfilter. But its not working.
var ndr=crossfilter(data); var fild=ndr.dimension(function(d){if(d.distance>=0.2){return d;}}); data=fild.top(Infinity);So the output data should be the following
var filtereddata=[ {"id":1,"distance":0.506}, {"id":2,"distance":0.506}, {"id":3,"distance":0.506}, {"id":4,"distance":0.506}, {"id":5,"distance":0.506} ]Can anyone help me to fix the problem?
最满意答案
我找到了解决方案。 这是工作代码
var ndr=crossfilter(data); var fild=ndr.dimension(function(d){return d;}); var fildata=fild.filterFunction(function(d){if(d.distance>=0.2){return d;}}); data=fild.top(Infinity);I have found the solution. This is the working code
var ndr=crossfilter(data); var fild=ndr.dimension(function(d){return d;}); var fildata=fild.filterFunction(function(d){if(d.distance>=0.2){return d;}}); data=fild.top(Infinity);更多推荐
发布评论