2014-12-29 2 views
0

У меня есть массив:Как сгруппировать элемент за минуту по оси x пользователь Rickshaw?

var array = []; 
var object1 = {}; 
object1.x = 1458083620; 
object1.y = 5; 
array.push(object1); 

var object2 = {}; 
object2.x = 1458083690; 
object2.y = 4; 
array.push(object2); 

И я хочу, чтобы отобразить этот массив:

var graph = new Rickshaw.Graph({ 
      element: document.querySelector("#chart"), 
      renderer: 'scatterplot', 
      width: 500, 
      height: 300, 
      series: [{ 
       data: array, 
       color: 'steelblue', 
       name: 'count' 
      }] 

}); 

var y_axis = new Rickshaw.Graph.Axis.Y({ 
      graph: graph, 
      orientation: 'left', 
      tickFormat: Rickshaw.Fixtures.Number.formatKMBT, 
      element: document.getElementById('y_axis') 
}); 

graph.render(); 

var hoverDetail = new Rickshaw.Graph.HoverDetail({ 
      graph: graph 
}); 

Но на экране я вижу, что 2 элемента (object1 и object2) в одной и той же линии. enter image description here

Как группировать элементы по часам/минутам/секундам?

Примечание: HTML-код

<div id="chart_container"> 
    <div id="y_axis"></div> 
    <div id="chart"></div> 
</div> 

ответ

1

, как вы назначаете й и у свойства для ваших объектов может быть проблемой.

Вы можете попробовать назначить свойства объекта, как показано в следующем примере.

Javascript:

//array to hold objects 
var array = []; 

//object1 with its properties 
var object1 = { 
    "x":1458083620, 
    "y":5 
}; 

//add object1 to the array 
array.push(object1); 


//object2 with its properties 
var object2 = { 

"x":1458083690, 
"y":4 

}; 

//add object2 to the array 
array.push(object2);