Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用d3和dc.js自定义时间线勾选_Javascript_D3.js_Dc.js - Fatal编程技术网

Javascript 使用d3和dc.js自定义时间线勾选

Javascript 使用d3和dc.js自定义时间线勾选,javascript,d3.js,dc.js,Javascript,D3.js,Dc.js,我有下一张图表: scrollChart ... .x(d3.time.scale().domain([startDate, endDate])) .round(d3.time.minutes) .alwaysUseRounding(true) .xUnits(d3.time.minutes); 如何更改.xUnits和.round以每5/10/15分钟为一个时间间隔 更新: 戈登的回答有帮助,但放大后我有了新问题 这是5分钟的间隔: 在我放大后,我有一张糟糕的

我有下一张图表:

scrollChart
   ...
   .x(d3.time.scale().domain([startDate, endDate]))
   .round(d3.time.minutes)
   .alwaysUseRounding(true)
   .xUnits(d3.time.minutes);
如何更改
.xUnits
.round
以每5/10/15分钟为一个时间间隔

更新:

戈登的回答有帮助,但放大后我有了新问题

这是5分钟的间隔:

在我放大后,我有一张糟糕的图表:(在过滤后,我如何将所有的内容“重新组合”到1分钟的间隔?这是真的吗

谢谢你的帮助。 我使用了d3.js版本3和主题。 首先,您需要复制
d3\u time\u interval
函数,因为它没有公开

接下来,我创建了一个函数,并在分组中使用它

const n_minutes_interval = (nMins) => {
    let denom = 6e4*nMins;
    return d3_time_interval(
         date => new d3_date(Math.floor(date / denom) * denom,
        (date, offset) => date.setTime(date.getTime() + Math.floor(offset) * denom, 
        date => date.getMinutes());
}

let myTimeInterval = n_minutes_interval(5);
let myGroup = dim.group(d => myTimeInterval(d)).someReduceFunction();

只影响画笔舍入。您可能希望按您感兴趣的时间间隔进行聚合。@Gordon您是对的,但我需要自定义时间间隔,而不是
小时
明白了,也许可以尝试此线程?@Gordon谢谢,这很有帮助。也许可以在回答中写更多信息r其他人。我现在还有一个问题,你能帮帮我吗?我更新了我的帖子。是的,那是一个。基本上,它会将点过滤到域内的点,当它需要保持一个点的边缘。虽然我在一个分支中有一个全面的修复,但它需要更多的工作,所以我现在会尝试在一个标志下推动一个解决方案。我很明显,它已经困扰我很长时间了。