gpt4 book ai didi

javascript - 带时间维度的条形图

转载 作者:行者123 更新时间:2023-11-30 21:04:37 25 4
gpt4 key购买 nike

我想制作一个 x 轴为日期的条形图,例如2017-08-12,y值为同一日期的数据行数(即记录数)。

// get data into right format
var dateFormat = d3.time.format("%Y-%m-%d");
pageViews.forEach(function(d) {
d['timestamp'] = dateFormat.parse(d['timestamp'].slice(0,10));
d['timestamp'].setDate(1);
});

// Create Crossfilter instance
var cf = crossfilter(data);

var dateDim = cf.dimension(function(d) {return d['timestamp'];});

var numByDate = dateDim.group();

但如果我这样做

console.log(numByDate.top(Infinity));

这会返回 5 个元素,它们是每个月的第一天,所以我的组是按年-月而不是年-月-日计算的,我该如何解决这个问题?

我调查了这个crossfilter.js: group data by month , 但它没有用,在使用 .all() 之后我仍然得到同样的结果。

我试过这个:

var numByDate = dateDim.group(function(d) {return d['timestamp'];});

它只是返回一个空对象。

最佳答案

所以这是我对js不熟悉的结果,复制粘贴示例代码...

这个问题是由于误用了 setDate方法,

setDate(1) 

只会将数据中的日期设置为第一天,因此 group 方法只会处理几个唯一的日期。

关于javascript - 带时间维度的条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46773919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com