如何获取交叉滤波器尺寸的当前滤波器?

jli*_*vni 9 crossfilter

我有一个crossfilter.dimension.如何在其上设置当前过滤器(例如,如果它是由图表中的画笔设置的)?

例:

dimension.filterRange([1,15]) // returns dimension
Run Code Online (Sandbox Code Playgroud)

给定此过滤维度,如何获取值1和15?

Gor*_*don 2

偶然发现这个老问题,因为它是投票最高的未回答交叉过滤器问题,有 1k 次浏览!

此功能由 Thomas Gillet 在1.4.5中贡献为Dimension.currentFilter()

剩下的棘手问题是:当您超出filterExactfilterRange范围时,更复杂的过滤器将使用filterFunction。您也许能够检索该函数,但函数本质上是不透明的。

例如,如果您使用 dc.js,它会在以下情况下生成一个过滤函数:

  • 在具有序数维度的饼图、行图或条形图中选择多个项目
  • 图表有一个二维过滤器,如散点图或热图

因此,如果您使用 dc.js,则应该使用Chart.filters()