2017-10-23 24 views
1

나는이제대로 다른 X (라벨)의 수와 y (데이터)와 ChartJS에 데이터를 공급하는 방법 지적

같은 chartJS에 데이터를 공급이

var data =[10,30,20,50,80,60,120,40,20,90,30,10]; 
var labels = [moment("12:00:00", 'HH:mm:ss'),moment("12:00:01", 'HH:mm:ss'),moment("12:00:02", 'HH:mm:ss'),moment("12:00:03", 'HH:mm:ss')]; 

같은 데이터 뭔가가있는 데이터 집합을 가지고

var ctx = document.getElementById("myChart").getContext('2d'); 
var myChart = new Chart(ctx, { 
    type: 'line', 
    data: { 
     labels: labels, 
     datasets: [{ 
     label: 'Voltage Fluctuation', 
     data: [10,20,30,40,50], 
     borderWidth: 1 
     }] 
    }, 
    options: { 
     scales: { 
     xAxes: [{ 
      type: 'time', 
      time: { 
       unit: 'minute', 
       displayFormats: { 
        hour: 'HH:mm:ss' 
       } 
      } 
     }] 
     }, 
    } 
}); 

그러나 처음 네 점, 즉 각 라벨에 대한 데이터 만 가져옵니다.

다음은 JSFiddle

내가 데이터가 모든 (4/12) 초이 경우 하나의 데이터 포인트에 모든 라벨 배포하고 그에 따라 그래프를 조정해야 할입니다.

라벨을 밀리 초 형식으로 변환하여 하드 코딩하지 않고도이를 수행 할 수있는 방법이 있습니까?

+1

그래서 각 점에는 레이블이 필요하다. 네 레이블 만 먹이기 때문에 당신은 4 점을 얻고 있습니다. 포인트 수를 레이블 수와 같도록 필요에 맞게 값을 다시 계산해야합니다. –

+1

네, 지금까지 데이터의 크기를 맞추기 위해 길이를 조정했습니다. 존재하는 대안을 알고 싶습니다. – Saikiran

답변

1

나는 동등한 길이의 배열을 만들기 위해 초를 밀리 초 단위로 잘라서 전체를 하드 코드했다.