2014-03-31 43 views
1

如何将自定义格式应用于图表nvd3.js的值?如何将自定义格式应用于.ValueFormat nvd3.js?

为例子,我收到以秒为单位,但我喜欢在格式HH显示:MM:SS

+0

你的意思打勾值?为此,请使用['.tickFormat()'](https://github.com/mbostock/d3/wiki/SVG-Axes#tickFormat)。 –

+0

我不是指“轴”的格式,我的意思是在“.Values(true)”的情况下,“数值格式”。 贡献在答案。 关于 –

回答

1

你能做到这样:

nv.addGraph(function() { 
    var chart = nv.models.discreteBarChart() 
     .x(function(d) { return d.rowId }) 
     .y(function(d) { return d.secs }) 
     .valueFormat(function(d) { return formatoHHMMSS(d)}); 

    nv.utils.windowResize(chart.update); 

    return chart; 
}); 


function formatoHHMMSS(secs){ 
    var hours = parseInt(secs/3600) % 24; 
    var minutes = parseInt(secs/60) % 60; 
    var seconds = secs % 60; 
    return (hours < 10 ? "0" + hours : hours) + ":" + (minutes < 10 ? "0" + minutes : minutes) + ":" + (seconds < 10 ? "0" + seconds : seconds); 
}; 
+0

尝试使用'd3.js'的内建函数,[这里](http://stackoverflow.com/questions/18072721/formating-the-date-in-nvd3-js/18075689#18075689)是s类似堆栈溢出的答案。关于[时间格式](https://github.com/mbostock/d3/wiki/Time-Formatting)的Mike Bostocks文档 – shabeer90

相关问题