2014-12-24 3 views
1

죄송합니다. 이것이 적절한 방법이 아닌 경우 죄송합니다. 동일한 질문에 대한 답변에 '평판 50'이 없으므로 에티켓에 'Answer'을 사용하면 안됩니다.Chart.js의 addData() 메소드를 사용하여 꺾은 선형 차트에 데이터 추가

나는 동일한 문제를 Add data to line chart using chart.js 에 설명되어 있지만 해결책은 나를 위해 작동하지 않습니다. 나는 Chart.js (1.0.1-beta.4)의 새로운 버전을 사용하고 있으며 이전 버전 인 1.0.1-beta.3을 제안대로 시도했다. addData()를 제외한 모든 기능이 저에게 효과적입니다. 나는 일하는 다른 방법들을 주석 처리했다.

사실, addData()가 Chart 내에서 특정 데이터 세트를 대상으로하는 방법은 분명하지 않습니다. 설명서에 표시되는 내용 : addData로 전달 된 값 배열은 차트의 각 데이터 집합에 대해 하나씩 있어야합니다.
그러나 하나의 데이터 세트 만 사용하고 있습니다.
아래 내 코드는 가능한 한 사소한 것으로 만들어 내 문제를 설명합니다.

내가 오류는 다음과 같습니다 catch되지 않은 형식 오류 : 나는 리눅스 민트 (17)와 크롬 버전 39.0.2171.71 (64 비트) 사용하고 정의되지 않은
의 특성 '점'을 읽을 수 없습니다.

<!doctype html> 
<html> 
    <head> 
     <title>Line Chart</title> 
     <script src="/js/Chart.min.js"></script> 
     <script> 
      window.onload = function() { 
       var ctx = document.getElementById("canvas").getContext("2d"); 

       var lineChartData = { 
        labels : ["1","2","3"], 
        datasets : [ 
         { 
          label: "Pulse", 
          data: [ 50, 60, 70 ], 
         }, 
        ] 
       }; 

       var myLineChart = new Chart(ctx).Line(lineChartData, {}) ; 

       // myLineChart.datasets[0].points[2].value = 100 ; // works 
       // myLineChart.update();  // works - resizes for y=100 
       // myLineChart.removeData() ; // works 

       myLineChart.addData([4,80], "4"); // doesn't work 
      } 
     </script> 
    </head> 
    <body> 
     <div style="width:30%"> 
      <div> 
       <canvas id="canvas" height="150" width="400"></canvas> 
      </div> 
     </div> 
    </body> 
</html> 
+0

그래서 여기에 단서가 있습니다. 단호하게 무엇을해야할지 모르겠습니다. 하나의 데이터 세트를 가지고 있지만, 코드에서 길이를 보면 길이는 1이지만, Chart.js의 addData()에서 보면 크기가 2가됩니다. dataset 2. 더미 데이터 셋을 추가하여 실제로 2이면 데이터 세트 1에서 작동하고 데이터 세트 2의 그래프에 X = 0으로 설정합니다. 불행히도 addData()의 코드를 이해하지 못합니다. 무슨 일 이니? –

답변

2

오케이, 나는 무엇이 잘못되었는지 알아 냈습니다.
addData() 사용법을 잘못 해석했습니다. 제공된 배열은 x, y 좌표의 단일 집합이라고 생각했지만 각 데이터 집합에 대해 1 인 y 좌표 집합이며 다음 'label'인수는 'x'레이블입니다.
나는 이것을 닫고있다.
아무쪼록 망쳐서 죄송합니다.

+0

솔루션을 가지고 있습니까? m 대면 : –

관련 문제