2014-07-15 1 views
0

종종 많은 점을 가진 시리즈를 보여야하고 일부 점에 대해 dataLabels를 설정하려고합니다. 잘 작동하지만 일련의 포인트가 너무 많으면 dataLabel이 처음부터 표시되지 않습니다. 시리즈를 확대하면 올바르게 표시됩니다.여러 점이 연속 된 데이터 라벨

제 질문 : 데이터 시리즈를 항상 그러한 시리즈에 표시 할 수있는 방법이 있습니까?

여기 내 JSFiddle입니다 : http://jsfiddle.net/Charissima/9aB6B/ dataLabel (51)

$(function() { 

     var myData = []; 
     for (var i = 0; i < 50; i++) { 
      myData.push(i + Math.random() * 3); 
     } 
     myData.push(51); 
     for (var i = 52; i < 400; i++) { 
      myData.push(i + Math.random() * 3); 
     }   

     chart = $('#container').highcharts('StockChart', { 
      chart : { 
       zoomType: 'x', 
       events : { 
        load : function() { 
         myChart = this; 
         mySeries = this.series[1]; 
        }, 
       } 
      }, 

      plotOptions: { 
       series: { 
        dataLabels: { 
        enabled: true, 
        formatter: setDataLabels 
        } 
       } 
      }, 

      series: [ 
       { 
        name: 'Label51', 
        id : 'dataseries', 
        color: 'blue', 
        data: myData 
       } 
      ] 

     }); 


     function setDataLabels() { 
      if (this.y == 51) { 
       return this.y; 
      } else { 
       return null; 
      } 
     } 

    }); 
+0

글쎄, 당신의 예제가 잘 작동합니다 .. 그것은 51에 dataLabel을 표시하고 있습니다. 그러나이 문제는 ['dataGrouping'] (http://api.highcharts.com/highstock#plotOptions.series.dataGrouping. 사용 가능). 그것을 무력화 시키면 우리가 보게 될 것입니다. –

+0

그게 다야! 신속하고 완벽한 대답에 감사드립니다. –

답변

0

에서이 dataGoruping에 의해 발생 - 비활성화하고 잘 작동합니다.

관련 문제