Я пытаюсь сделать линейную диаграмму из набора данных, сохраняя категориальность оси X. Для наблюдателя это будет выглядеть как линейная диаграмма с равноудаленными интервалами между координатами X наблюдений:
( 1 ------ 5 ------ 30 ------ 600)
На данный момент я получаю что-то вроде этого:
(1-5-----30-------------------600)
Это мой набор данных:
var ds1 = [
{
key: 'VAR-1',
color: '#FF7F0E',
values: [
{ "x" : "600", "y" : 0.07706}
, { "x" : "30", "y" : 0.00553}
, { "x" : "5", "y" : 0.00919}
, { "x" : "1", "y" : 0.00969}
]
}
];
Я попытался создать ось порядкового номера и установить ее в объекте линейной диаграммы:
var chart =nv.models.lineChart()
.margin({top: 10, bottom: 40, left: 60, right: 30});
var x = d3.scale.ordinal().domain(["1","5", "30", "600"]);
chart.xAxis.scale(x);
chart.yAxis
.tickFormat(d3.format(',.3f'));
chart.forceY([0]);
d3.select('#exampleOne')
.datum(ds1)
.transition().duration(500)
.call(chart);
Однако в сюжете, похоже, ничего не меняется.
Мне было интересно, может ли вообще быть включена ось порядка в реализации линейной диаграммы NVD3, или эта линейная диаграмма была написана только для числовых данных?
PS: я новичок в d3.js, поэтому, возможно, я делаю что-то не так.