首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Chart.js :当两个日期之间存在空白时,将yAxis值设置为0

Chart.js :当两个日期之间存在空白时,将yAxis值设置为0
EN

Stack Overflow用户
提问于 2016-08-30 02:19:16
回答 1查看 467关注 0票数 5

我使用的是Chart.js,在我的xAxis中,我有一系列的日期,它们之间的间隔为: 2016:08:06,2016:08:10和它们的匹配值20,40

问题是,Chart.js显示给定日期数组之间的天数。我不想将数组设置为20,0,0,0,40,因为我有3天的间隔。如何在yAxis中自动将它们的匹配值设置为0。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-31 06:59:50

不久前,我遇到了同样的问题,并通过编写一个简单的javascript“修复”了这个问题。

  1. 创建新的日期数组;
  2. 将其与当前的日期数组进行比较;
  3. 用零填充值数组中相应的空白;

也许可以做得更简单、更漂亮,但下面是我的代码:

代码语言:javascript
代码运行次数:0
运行
复制
var minDate = new Date(date[0]).getTime(),
maxDate = new Date(date[date.length - 1]).getTime();

var newDates = [],
currentDate = minDate,
d;

while (currentDate <= maxDate) {
    d = new Date(currentDate);
    newDates.push(d.getFullYear() + '-' + ("0" + (d.getMonth() + 1)).slice(-2) + '-' + ("0" + d.getDate()).slice(-2));
    currentDate += (24 * 60 * 60 * 1000); // add one day
}

for (var i = 0; i < newDates.length; i++) {
    if (newDates[i] == dates[i]) {
        newCount.push(count[n]);
        n++;
    } else {
        newCount.push("0");
        dates.splice(i, 0, newDates[i]);            
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39217834

复制
相关文章

相似问题

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