Как настроить формат значения Y с секунды до мин / сек в nvd3.js
Вопрос
Я пытаюсь нарисовать диаграмму с данными в следующем формате:
[
{'label':'0', 'seconds':1094},
{'label':'1', 'seconds':1096},
{'label':'2', 'seconds':1112},
...
]
.
и результат выглядит так:
Это выглядит хорошо и вопрос: Как настроить формат отображения значения y к этому? :
<Сильное> Обновление: Код, создающий график
nv.addGraph(function() {
var chart = nv.models.multiBarHorizontalChart()
.x(function(d) { return d.label })
.y(function(d) { return d.value })
.margin({top: 30, right: 20, bottom: 50, left: 20})
.showValues(true) //Show bar value next to each bar.
.tooltips(false) //Show tooltips on hover.
.transitionDuration(350)
.showControls(true); //Allow user to switch between "Grouped" and "Stacked" mode.
chart.yAxis
.tickFormat(d3.format(',.0f'));
d3.select('#chart1 svg')
.datum(jsonData)
.call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
. Решение
Попробуйте что-то вроде этого
chart.yAxis.tickFormat(function(d) {
// %M - minute as a decimal number [00,59].
// %L - milliseconds as a decimal number [000, 999].
return d3.time.format('%M%L')(new Date(d))
});
.
<Сильное> Обновление:
// Line Not Tested but valueFormat should do the trick
chart.valueFormat(d3.time.format('%M%L'));
.
Посмотрите на this
Если вам нужно больше времени форматирования форматирования.
Надеюсь, это поможет.
Не связан с StackOverflow