使用文本框进行交叉过滤
Crossfiltering using textboxes
我一直在谷歌搜索,但我似乎找不到一个关于将交叉过滤与文本框一起使用的好例子。
我正在尝试使用交叉过滤器在数据表上添加文本框过滤。
当前遵循此代码库http://bl.ocks.org/d3noob/6077996
阅读此 wiki 并没有多大帮助
https://github.com/square/crossfilter/wiki/API-Reference
我知道有人问了一个问题,但解决方案太短,我无法复制它
Crossfilter filter based on textbox
我不确定你的项目进展到什么程度,所以我只能就你可以进一步调查的事情提供广泛的建议。
- 在使用 crossfilter.js 筛选维度之前,您需要注册该维度。在您找到的示例中,这就是初始化
var magValue
、var timeDimension
、var depthValue
和 var volumeByDay
变量时所做的事情。
- 如果您还没有,您需要监听何时将字符插入文本框。这可以通过侦听 keyup 事件的事件侦听器来完成。当监听器注册一个keyup事件时,可以触发对应维度的过滤函数
- 在 crossfilter.js 中使用
myDimension.filter(value)
函数时,它会根据传递的是简单变量、数组还是函数来过滤精确值、范围或函数。在示例中,您发现这似乎是由 dc.js 处理的,但在 Stack Overflow 和 API 中,您引用的是通过与预实例化维度交互来手动处理的。
如果精确匹配是你想要的,那么你可以直接从你的文本框中传递内容。如果你想要更模糊的标准,你可以在调用 myDimension.filter(value)
. 时通过传递一个函数来使用类似 Levenshtein distance (e.g. via this npm package) 的东西
让我知道这是否对您有帮助(或没有帮助)。如果您可以分享您目前拥有的代码,我可以更具体地解决您的问题。
我一直在谷歌搜索,但我似乎找不到一个关于将交叉过滤与文本框一起使用的好例子。
我正在尝试使用交叉过滤器在数据表上添加文本框过滤。
当前遵循此代码库http://bl.ocks.org/d3noob/6077996
阅读此 wiki 并没有多大帮助
https://github.com/square/crossfilter/wiki/API-Reference
我知道有人问了一个问题,但解决方案太短,我无法复制它
Crossfilter filter based on textbox
我不确定你的项目进展到什么程度,所以我只能就你可以进一步调查的事情提供广泛的建议。
- 在使用 crossfilter.js 筛选维度之前,您需要注册该维度。在您找到的示例中,这就是初始化
var magValue
、var timeDimension
、var depthValue
和var volumeByDay
变量时所做的事情。 - 如果您还没有,您需要监听何时将字符插入文本框。这可以通过侦听 keyup 事件的事件侦听器来完成。当监听器注册一个keyup事件时,可以触发对应维度的过滤函数
- 在 crossfilter.js 中使用
myDimension.filter(value)
函数时,它会根据传递的是简单变量、数组还是函数来过滤精确值、范围或函数。在示例中,您发现这似乎是由 dc.js 处理的,但在 Stack Overflow 和 API 中,您引用的是通过与预实例化维度交互来手动处理的。 如果精确匹配是你想要的,那么你可以直接从你的文本框中传递内容。如果你想要更模糊的标准,你可以在调用myDimension.filter(value)
. 时通过传递一个函数来使用类似 Levenshtein distance (e.g. via this npm package) 的东西
让我知道这是否对您有帮助(或没有帮助)。如果您可以分享您目前拥有的代码,我可以更具体地解决您的问题。