D3.js 将秒转换为分钟并格式化轴
我有秒格式的数据。我想将秒数据转换为小时和分钟,并沿轴显示这些数据。例如,我一直在尝试这样做:D3.js 将秒转换为分钟并格式化轴,d3.js,D3.js,我有秒格式的数据。我想将秒数据转换为小时和分钟,并沿轴显示这些数据。例如,我一直在尝试这样做: var xAxis = d3.svg.axis() .scale(x) .orient("bottom") .tickFormat(function(d) {return d/60}); 我看到D3有一个时间格式化程序,但我似乎无法让它显示正确的格式。我要寻找的是D3中的一种方法,它可以将数据在几秒钟内转换为几小时和几分钟。我如何才能做到这一点?var
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom")
.tickFormat(function(d) {return d/60});
我看到D3有一个时间格式化程序,但我似乎无法让它显示正确的格式。我要寻找的是D3中的一种方法,它可以将数据在几秒钟内转换为几小时和几分钟。我如何才能做到这一点?var xAxis=d3.svg.axis()
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom")
.tickFormat(function(d) {
var minutes = Math.floor(d / 60000);
var seconds = +((d % 60000) / 1000).toFixed(0);
return (seconds == 60 ? (minutes+1) + ":00" : minutes + ":" + (seconds < 10 ? "0" : "") + seconds);
});
.比例(x)
.orient(“底部”)
.d格式(函数(d){
var分钟=数学地板(d/60000);
变量秒=+((d%60000)/1000).toFixed(0);
返回(秒==60?(分钟+1)+“:00”:分钟+”:“+(秒<10?:”)+秒);
});
这将把毫秒转换成分和秒 以下是子孙后代的答案(在设置日期时,如果需要,它应该与初始化其他日期对象的时间相关):
时间函数是一种方法。你试过什么,什么不起作用?谢谢你的帮助。我尝试过使用这样的时间函数:
format=d3.time.format(“%M”)代码>调用format(200)
无法正确设置时间格式。啊,我想我误解了你的意图。您的时间是相对于开始的,而不是绝对的(即Unix时间戳)?那么你所做的就是最好的处理方法——时间函数是用来处理绝对时间的。是的,我的时间是相对的。我希望D3有一个内置的方法来处理这个问题。除非你把它们转换成绝对时间。
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom")
.tickFormat(function(d) {
return d3.timeFormat('%-M')( new Date(0).setSeconds(d) ) # formats minutes
});