首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Crossfilter返回按日期增长金额

Crossfilter返回按日期增长金额
EN

Stack Overflow用户
提问于 2019-04-16 01:13:29
回答 1查看 20关注 0票数 1

我第一次使用crossfilter来制作仪表板,但我遇到了一个问题。

我需要做一个图表,它将返回一个日期维度的已用存储量。因为它是可移动存储,所以我的webservice只给了我每天消耗的存储空间,而不是总存储空间。

所以如果我有这样的东西:

代码语言:javascript
运行
复制
[
  {"jobName": "A", "dataLength": 368, "date": "2019-01-05"},
  {"jobName": "A", "dataLength": 1420, "date": "2019-01-06"},
  {"jobName": "B", "dataLength": 553, "date": "2019-01-06"},
  {"jobName": "A", "dataLength": 156, "date": "2019-01-08"},
  {"jobName": "B", "dataLength": 937, "date": "2019-01-08"},
  {"jobName": "B", "dataLength": 423, "date": "2019-01-09"},
  {"jobName": "B", "dataLength": 223, "date": "2019-01-10"}
]

它将返回如下内容:

代码语言:javascript
运行
复制
[
  {"key": "2019-01-05", "value":  368},
  {"key": "2019-01-06", "value":  2341},
  {"key": "2019-01-08", "value":  3434},
  {"key": "2019-01-09", "value":  3857},
  {"key": "2019-01-10", "value":  4080}
]

有谁知道如何做到这一点吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-04-17 01:45:32

当组被读取时,您可以使用use a fake group to accumulate values

代码语言:javascript
运行
复制
function accumulate_group(source_group) {
    return {
        all:function () {
            var cumulate = 0;
            return source_group.all().map(function(d) {
                cumulate += d.value;
                return {key:d.key, value:cumulate};
            });
        }
    };
}
var group = dimension.group().reduceSum(d => d.dataLength);
chart.group(accumulate_group(group));

感谢@Xavier Dutoit的这篇文章!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55694247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档