2011-10-21 34 views
9

highchart có tùy chọn cho phép tôi đặt điểm đánh dấu thành giá trị nhất định.đặt điểm đánh dấu biểu tượng bằng vạch cao

highchart doc:

... 
    data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, { 
     y: 26.5, 
     marker: { 
      symbol: 'url(/demo/gfx/sun.png)' 
     } 
    }, 23.3, 18.3, 13.9, 9.6] 
... 

Như bạn thấy, vị trí 26,5 lợi nhuận một hình ảnh png như đánh dấu của nó.

Câu hỏi của tôi là: Làm thế nào tôi có thể đặt giá trị đó thành một giá trị nhất định từ mảng của mình?

$.getJSON('ajax/lineChart.ajax.php', function(data) {   
    $.each(data, function(key, value) { 
     var series = { 
      data: [ { 
       y: 0, 
       marker: { 
        symbol: 'url(img/fail.png)' 
       } 
      }], //data array for new series 
      name: key, 
      marker: { 
        symbol: 'square' 
       } 
     }; 
     series.data = value; 
     options.series.push(series); // <-------- pushing series object 
    }); 
    var chart = new Highcharts.Chart(options); 
}); 

tôi đã thử điều này nhưng không có gì xuất hiện. Biểu đồ chạy mà không có điểm đánh dấu.

Trả lời

2

Dòng:

series.data = value; 

ghi đè bất cứ điều gì bạn đã viết trong

var series = { 
     data: [ { 

Tôi không chắc chắn những gì bạn có trong "dữ liệu" khác nhau, nhưng giả định của nó là như [key: [VAL1 , val2, ...], ...], hãy thử thay thế "series.data = value" bằng các thông tin sau:

var list= new Array(); 
foreach(var v as value){ 
    if (v==0){ //or what ever condition you need to use a different mark 
     var m={ 
      y: v, 
      marker: { 
       symbol: 'url(img/fail.png)' 
      }}; 
     list.push(m);  
    } 
    else{ 
     list.push(v); 
    } 
} 
series.data = list; 
Các vấn đề liên quan