Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.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 Chart.js:当两个日期之间存在间隙时,将yAxis点设置为0_Javascript_Html_Chart.js - Fatal编程技术网

Javascript Chart.js:当两个日期之间存在间隙时,将yAxis点设置为0

Javascript Chart.js:当两个日期之间存在间隙时,将yAxis点设置为0,javascript,html,chart.js,Javascript,Html,Chart.js,我使用的是Chart.js,在我的xAxis中,我有一些日期的数组,其中有空格,比如[2016:08:062016:08:10]及其匹配值[20,40] 问题是Chart.js正在显示给定日期数组之间的天数。 我不想将数组设置为[20,0,0,0,40],因为我有3天的间隔。 我如何在yAxis中将它们的匹配值自动设置为0。不久前,我遇到了同样的问题,并通过编写一个简单的javascript代码“修复”了它。 1.创建新的日期数组 2.将其与当前日期数组进行比较 3.用零填充值数组中相应的空白

我使用的是Chart.js,在我的xAxis中,我有一些日期的数组,其中有空格,比如[2016:08:062016:08:10]及其匹配值[20,40]

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

不久前,我遇到了同样的问题,并通过编写一个简单的javascript代码“修复”了它。
1.创建新的日期数组
2.将其与当前日期数组进行比较
3.用零填充值数组中相应的空白

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

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]);            
    }
}
var minDate=新日期(日期[0])。getTime(),
maxDate=新日期(Date[Date.length-1]).getTime();
var newDates=[],
currentDate=minDate,
D
while(currentDate)您能为您的问题添加一个解决方案吗?