2014-02-17 1 views
0

У меня проблема с порядковой шкалой в D3 и линейной диаграммой. Я получаю массив «Ярлыки []» с форматированными строками, и я буду «ссылаться» на эти строки на мою ось X. Как я могу это понять легкомысленно? Мой код ниже не работает ... мой Data-Domain - все записи в массиве ярлыков, противоположные диапазону моего диаграммы!?! поблагодарить у ...D3 Линейная диаграмма с порядковым номером

0: "15.08.2013 00:15" 1: "15.08.2013 00:30" 2: "15.08.2013 00:45" 3: «15.08.2013 01: 00" 4: "15.08.2013 1:15" 5: "15.08.2013 1:30" 6: "15.08.2013 1:45" 7: "15.08.2013 2:00"

xScale = d3.scale.ordinal() 
      .rangePoints([0, chartWidth], 0.5) 
      .domain(Labels.map(function (d, i) { 
         Labels[i]; 
        })) 

    xAxis = d3.svg.axis() 
      .scale(xScale) 
      .orient("bottom"); 

    var line = d3.svg.line() 
       .x(function (d, i) { 
        return xScale(Labels[i]) 
       }) 
       .y(function (d) { return yScale(d.Value) }) 
        .interpolate("linear"); 
+1

Можете ли вы предоставить скрипку с полным кодом? –

ответ

1

В опубликованном коде домен не настроен правильно, потому что ваша функция карты не возвращает значения. Но даже если он возвращал значение, он все равно не нужен. Вы просто возвращаете копию массива Labels точно так, как есть. Если вы не делаете преобразования массива, просто передайте его напрямую:

xScale = d3.scale.ordinal() 
    .rangePoints([0, chartWidth], 0.5) 
    .domain(Labels);