gpt4 book ai didi

javascript - Crossfilter 过滤和显示数组属性

转载 作者:行者123 更新时间:2023-11-29 10:47:58 25 4
gpt4 key购买 nike

我有一个这样的数据对象数组:

{
index: "M1",
first: "First",
last: "Last",
distance: 5,
specialties: ["Pediatrics", "Internal"],
languages: ["English", "French"]
}

除了按距离过滤:

var cf = crossfilter(physicians);
var byDistance = cf.dimension(function (d) {
return d.distance;
});

我想按专业筛选。我看过 this question ,但这只是为我提供了一个结构,其中包含整个数据集的每个专​​业的数量。

理想情况下,我想根据距离过滤器显示匹配的专业,并使用专业进一步过滤结果。

考虑到我的对象的结构,这可能吗?有没有更简单的方法来表示更适合过滤的数据?

谢谢。在这里 fiddle :http://jsfiddle.net/colin_young/xRQjX/35/

最佳答案

Support for custom filter functions已在 crossfilter-1.2.0 中添加。您现在应该能够执行以下操作:

var specialties = cf.dimension(function(d) {
return d.specialties;
});

specialties.filterFunction(function(d) {
return d.indexOf("specialty") >= 0;
});

或者,您可以为每个可能的专业制作一个维度:

var pediatrics = cf.dimension(function(d) {
return d.specialties.indexOf("pediatrics") >= 0;
});

var internal = cf.dimension(function(d) {
return d.specialties.indexOf("internal") >= 0;
});

并对它们运行过滤器(但这只支持 AND 条件)。

关于javascript - Crossfilter 过滤和显示数组属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15888540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com