首页 > 解决方案 > 如何在 Crossfilter 中正确创建维度和组?

问题描述

我有一个这样的数据集:

[
  {
    event: 'open',
    delay: 120,
    createdAt: 157643454332
  },
  {
    event: 'click',
    delay: 240,
    createdAt: 157866452342
  }
  // roughly a 1000 records with data in the above format
]

我想创建一个看起来像这样的交叉过滤器。

条件如下:

我已经尝试了很多东西,并且被卡住了。谷歌搜索也没有帮助。

任何有任何指示可以帮助我朝着正确方向前进的人都会有所帮助!

我也阅读了文档,但这一切都非常令人困惑。

更新:这是一个代码框,它基本上可以完成我现在所做的一切来设置交叉过滤器。

如何过滤它以充当交叉过滤器?这就是让我感到困惑的地方。

https://codesandbox.io/s/l4w2vn5rpz

标签: javascriptreactjscrossfilter

解决方案


我得到了我难以理解的东西。

对于将来登陆这里的任何人,我在博客文章和 API 文档中找到的以下片段将有所帮助。

该函数必须返回自然排序的值,即相对于 JavaScript 的 、 和 运算符表现<正确<=>=>

特别是,这意味着您的维度和组值函数绝不能返回NaNundefinednull

.

维度读取数据集并在函数中对具有相同结果的项目进行分组。

.

维度允许我们将项目分组到不同的子集中。应用过滤器是从我们的数据集中排除项目的子集。

.

用于对数据进行排序的交叉过滤器工具是维度,因此想法是更改维度。

原始帖子可以在这里找到。此外,在阅读完博客文章之后,彻底阅读API 参考Crossfilter Gotchas真的很有帮助,因为它有助于澄清我认为文档中的一些复杂内容。

我希望这可以帮助别人!


推荐阅读