【问题标题】:How to set brushes to filtered range with dc.js [duplicate]如何使用 dc.js 将画笔设置为过滤范围 [重复]
【发布时间】:2015-05-23 22:15:16
【问题描述】:

我创建了this 可视化,并希望在说明文本中使用预定义的过滤器。我创建了一个链接,将过滤器应用于条形图,如下所示:

<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 问题,但没有设法将其应用于 dc.js 的工作方式。 Another 的问题似乎在同一个方向,但缺乏彻底的答案。

【问题讨论】:

  • 我假设您的图表有一个定量的,而不是有序的 x 刻度 - 在 dc.js 中,画笔在每种情况下的工作方式都大不相同。如果它是序数,这应该有效。如果是定量的,这就是上面标记的骗局。
  • 嗯,如何在不提供链接的情况下将其关闭为重复项? stackoverflow.com/a/29041518/676195

标签: dc.js


【解决方案1】:

由于我们没有足够的审阅者来将问题标记为重复,所以我会详细说明。

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();
}

【讨论】:

    猜你喜欢
    • 2018-05-08
    • 2019-08-21
    • 2013-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多