如何使用 dc.js 将画笔设置为过滤范围
How to set brushes to filtered range with dc.js
我已经创建了 this 可视化并且想在解释文本中使用预定义的过滤器。我创建了一个 link 过滤器应用于条形图,如下所示:
<a href="javascript:filterAge([13,14,15])">Filter</a>
filterAge 函数是:
function filterAge(filters) {
dc.filterAll();
for (var i = 0; i < filters.length; i++) {
ageChart.filter(filters[i]);
}
dc.redrawAll();
}
过滤器工作正常,但年龄图表中的画笔未相应设置。所以对于用户来说,很难说出到底过滤了什么。
我遇到了 this question but did not manage to apply this to the dc.js way of working. Another 问题似乎方向相同,但缺乏彻底的答案。
由于我们没有足够的审稿人来将问题标记为重复,所以我会详细说明。
dc.js 对定量尺度的过滤处理完全不同,因此您不能使用上面的代码,它适用于顺序尺度。
尝试使用 ranged filter object 代替:
<a href="javascript:filterAge(13,16)">Filter</a>
function filterAge(low, high) {
dc.filterAll();
ageChart.filter(dc.filters.RangedFilter(low, high));
dc.redrawAll();
}
我已经创建了 this 可视化并且想在解释文本中使用预定义的过滤器。我创建了一个 link 过滤器应用于条形图,如下所示:
<a href="javascript:filterAge([13,14,15])">Filter</a>
filterAge 函数是:
function filterAge(filters) {
dc.filterAll();
for (var i = 0; i < filters.length; i++) {
ageChart.filter(filters[i]);
}
dc.redrawAll();
}
过滤器工作正常,但年龄图表中的画笔未相应设置。所以对于用户来说,很难说出到底过滤了什么。
我遇到了 this question but did not manage to apply this to the dc.js way of working. Another 问题似乎方向相同,但缺乏彻底的答案。
由于我们没有足够的审稿人来将问题标记为重复,所以我会详细说明。
dc.js 对定量尺度的过滤处理完全不同,因此您不能使用上面的代码,它适用于顺序尺度。
尝试使用 ranged filter object 代替:
<a href="javascript:filterAge(13,16)">Filter</a>
function filterAge(low, high) {
dc.filterAll();
ageChart.filter(dc.filters.RangedFilter(low, high));
dc.redrawAll();
}