我使用Chart.js并在我的xAxis中有一些日期与[2016:08:06,2016:08:10]及其匹配值[20,40]等差距的数组
问题是Chart.js在给定的日期数组之间显示天数。 我不想将我的阵列设置为[20,0,0,0,40],因为我有3天的差距。 如何自动将yAxis中的匹配值设置为0。
答案 0 :(得分:0)
我不久前遇到了同样的问题,并通过编写一个简单的javascript hack来“修复”它
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]);
}
}