2014-02-21 5 views
0

저는 인력거를 사용하여 유전자 알고리즘의 진화를 시간에 따라 도표화하고 있습니다. 그래서 차트를 스트리밍으로 보내고 0에서 시작하는 x-Axys에서 시간을 확인하고 싶습니다.인력거에서 X 축을 0ms에서 시작하여 초에서 초로 진화합니다.

var data = { x: new Date().getTime(), y: N) }; 
graph.series[0].data.push(data); 
graph.render(); 

및 I는 다음과 같이 상기 X AXYS 구성에있어 : ​​I은 동적 같은 스트리밍 결과를 밀어 사용하고

var axes = new Rickshaw.Graph.Axis.Time({ 
    graph: graph 
}); 

I 달성 결과와 타임 라인이다 45 번, 02:00, 13:00과 같은 이상한 시간. 내가 필요한 것은 ______________ | | |
0s 1s 2s
________________ | | |
0s 5s 10s
로 진화하고 있습니다. 어떤 팁이 있습니까?

답변

1

방금 ​​답변을 찾았습니다.

// Declare the starting time 
var startTime = new Date().getTime(); 

// format time to appear only the seconds 
var format = function(d) { 
    d = new Date(d); 

    var seconds = Number(d3.time.format("%S")(d)); 
    if (seconds === 0) { 
    return Number(d3.time.format("%L")(d)) + ' ms'; 
    } else { 
    return seconds + ' s'; 
    } 
}; 

var x_axis = new Rickshaw.Graph.Axis.X({ 
    graph: graph, 
    tickFormat: format, 
}); 

// Push new value 
// Subtract startTime to the current time 
var currTime = new Date().getTime() - startTime; 
var data = { x: currTime, y: N) }; 
graph.series[0].data.push(data); 

// Render the graph 
graph.render(); 
당신은이 링크에서 D3에 더 많은 시간 형식을 확인할 수 있습니다

: http://www.d3noob.org/2012/12/formatting-date-time-on-d3js-graph.html