【问题标题】:fake group and filtering dc.js假组和过滤 dc.js
【发布时间】:2020-12-31 18:42:48
【问题描述】:

我不得不为我的项目创建一个累积和组和一个 remove_zero 组。 当我将它们组合起来并在另一个维度上进行过滤时,就会出现问题。我的累计和假组中似乎没有考虑过滤器。

我已将所有内容放入this jsFiddle

当通过单击顶部的条形图过滤age 时(只有 1w 会做某事),如果我理解正确,底部的两个折线图应该具有相同的日期跨度,因为它们使用相同的维度。但这不会发生。顶部的根本不会重新缩放,而底部的会。

两个折线图(我可以看到)之间的唯一区别在于组定义:

  • 第一:.group(remove_zero_values(cumulSumGroup(groups.date.TOTAL_PNL)))
  • 底一:.group(remove_zero_values(groups.date.TOTAL_DELTA))

我的问题是:当我点击顶部条形图时,如何确保顶部折线图也过滤日期?

【问题讨论】:

    标签: dc.js crossfilter reductio


    【解决方案1】:

    如果您将累积和与过滤零相结合,您需要先过滤零:

    .group(cumulSumGroup(remove_zero_values(groups.date.TOTAL_PNL)))
    

    否则,每个 bin 都会从最后一个 bin 继承一个值,并且其中极少数会保持为零。

    Fork of your fiddle.

    【讨论】:

    • 理论上它应该足够小以保持在我的阈值 1 以下。我很惊讶订单很重要。
    • 是的,我有点困惑为什么它会起作用,因为在你的情况下,零应该在开头。一旦我看到它工作,我就没有进一步挖掘(仅显示 9 月 8 日以后)。一般来说,是的顺序绝对重要,因为一个值会消除后面的任何零。
    • 是的,我的意思是我的具体情况下的订单。将不得不进一步挖掘,因为我不喜欢不理解为什么东西有效:)
    猜你喜欢
    • 2015-12-21
    • 2014-08-02
    • 2018-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多