C3.js 时间刻度格式问题
C3.js time tick format issue
我尝试运行下面的代码来显示带小时、分钟和秒的日期。 me.But 它工作正常,但存在一个问题。如果时间超过 24 小时,则显示第二天。我想显示确切的时间。
y 轴数据如 [400,596,2699](转换为秒 - 虚拟值)
chartDefault = c3.generate({
bindto : '#divlineChart',
data : {
x : 'x',
columns : [
barChartTasks,
barChartCounts
],
keys : {
value : barChartTasks,
},
},
axis : {
x : {
type : 'category'
},
y : {
tick : {
format : function (y) {
return d3.time.format("%X")(new Date(new Date('2016-01-01 00:00:00').getTime() + (y * 1000)));
}
},
label : {
text : 'Hours',
position : 'outer-center'
}
}
},
bar : {
width : {
ratio : .5
}
}
});
输出会像
我想显示 24:28:59 而不是 00:28:59。
您需要编写自己的小格式化程序,就像这里的这个:
format: function (y) {
var twoFormat = d3.format("02d");
var parts = [
twoFormat(Math.floor(y / 3600)),
twoFormat(Math.floor((y % 3600) / 60)),
twoFormat(Math.floor(y % 60))
];
return parts.join(":");
}
此外,由于您不使用所生成内容的日期部分,所以所有 'new Date' 内容都是多余的
我尝试运行下面的代码来显示带小时、分钟和秒的日期。 me.But 它工作正常,但存在一个问题。如果时间超过 24 小时,则显示第二天。我想显示确切的时间。 y 轴数据如 [400,596,2699](转换为秒 - 虚拟值)
chartDefault = c3.generate({
bindto : '#divlineChart',
data : {
x : 'x',
columns : [
barChartTasks,
barChartCounts
],
keys : {
value : barChartTasks,
},
},
axis : {
x : {
type : 'category'
},
y : {
tick : {
format : function (y) {
return d3.time.format("%X")(new Date(new Date('2016-01-01 00:00:00').getTime() + (y * 1000)));
}
},
label : {
text : 'Hours',
position : 'outer-center'
}
}
},
bar : {
width : {
ratio : .5
}
}
});
输出会像
我想显示 24:28:59 而不是 00:28:59。
您需要编写自己的小格式化程序,就像这里的这个:
format: function (y) {
var twoFormat = d3.format("02d");
var parts = [
twoFormat(Math.floor(y / 3600)),
twoFormat(Math.floor((y % 3600) / 60)),
twoFormat(Math.floor(y % 60))
];
return parts.join(":");
}
此外,由于您不使用所生成内容的日期部分,所以所有 'new Date' 内容都是多余的