2011-08-13 6 views
0

안녕하세요. 하이 차트의 '시리즈'옵션에 문제가 있습니다. I는 아래 표 옵션 초기화 : 나중에 카테고리의 값을 넣을 수 있도록 빈 [] : highcharts 시리즈 옵션의 문제점

  var options = { 
      chart: { 
       renderTo: 'chart', 
       defaultSeriesType: 'line', 
      }, 
      title: { 
       text: 'Weight Monitor', 
      }, 
      xAxis: { 
       title: { 
        text: 'Date Measurement' 
       }, 
       categories: [] 
      }, 
      yAxis: { 
       title: { 
        text: 'Weight (in Lbs)' 
       } 
      }, 
      series: [] 
    }; 

제가

범주를 유지했다. 내 시리즈 옵션으로했던 것과 똑같은 일. 나는 데이터를 다음과 같이 비워 두었다가 나중에 채우도록했다. 이제 데이터를 채우기 위해 코드를 작성했습니다. 그것은 "options.series.data.push (에서는 parseFloat (항목))"에있을 때

   var lines = [ 
       [2011,150], 
       [2012,121], 
     $.each(lines, function(lineNo, line) { 
      var items = line.toString().split(","); 
      $.each (items, function(itemNo, item) { 

       if(itemNo == 0){ 
        alert("itemNo: " + itemNo + " item: " + item); 
        options.xAxis.categories.push(item); 
        alert(options.xAxis.categories); 
       } 

       else { 
          var series = { 
            data: [] 
          }; 
        alert("itemNo: " + itemNo + " item: " + item); 
        options.series.data.push(parseFloat(item)); 
        alert(options.series.data); 
       }; 
      }); 
     }); 
     var chart = new Highcharts.Chart(options); 

내가이 코드를 실행하면 이제 내 카테고리는 [] 점점 값을 제대로 만 실행이 붙어됩니다. "alert ("itemNo : "+ itemNo +"item : "+ item);"에서 적절한 값을 얻고 있습니다. 하지만 그 직후에 항목을 시리즈로 밀어 넣으면 멈 춥니 다. []

어떤 문제인지는 알 수 없습니다. PHP 프로젝트에서이 자바 스크립트를 실행하고 있으므로 언어 ​​때문에 문제가 있는지를 모릅니다. 감사합니다

답변

2

문제는 options.series.data.push(parseFloat(item))입니다.

옵션 개체를 보면 계열 배열이 비어 있음을 알 수 있습니다. 또한

series: [{ 
    data: [] 
}] 

var series = { 
    data: [] 
}; 

아무 소용이 라인 - 다음과 같이 광고 시리즈는 옵션 정의에 반대 할 수 있습니다.