2013-08-07 19 views
7

Son bir noktadaki araç ipucunu belirli bir dizide özelleştirmek istiyorum, bu dizideki diğer noktaları ve diğer ipuçlarını varsayılan araç ipucu biçimiyle bırakın. Temel olarak, bu yapılandırmaya benzer bir şey arıyorum. Yardımın için şimdiden teşekkürler!highcharts tek bir nokta için araç ipucunu özelleştir

series: [{ 
      tooltip: { // ?? tooltip does not work inside series 
       formatter: function() { 
        if (lastPoint in the series) { // ?? how to determine if lastPoint 
         return '<b>Final result is </b> ' + this.y; 
        } 
        // ?? return default format if it is not the last point in the series 
       } 
      },    
      data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6]   
     }, { 
      data: [194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2]   
     }] 

cevap

13

Biçimlendirici işlevi, bir seri için tanımlandığında işe yaramaz gibi görünmüyor. Kullanmakta olduğunuz dizileri this.series.name kullanarak kontrol edebilir ve son noktada olup olmadığınızı kontrol edebilirsiniz: this.series.xData.length - 1 == this.point.x. Ancak, hedeflemek istediğiniz noktayı adlandırmak ve biçimlendirici işlevinde bunu kontrol etmek daha kolay olurdu. http://jsfiddle.net/Swsbb/. Tüm biçimlendirici verilerini görmek için buraya tıklayın http://api.highcharts.com/highcharts#tooltip.formatter.

$('#container').highcharts({ 
    xAxis: { 
     categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'] 
    }, 
    tooltip : { 
     formatter: function() { 
      var tooltip; 
      if (this.key == 'last') { 
       tooltip = '<b>Final result is </b> ' + this.y; 
      } 
      else { 
       tooltip = '<span style="color:' + this.series.color + '">' + this.series.name + '</span>: <b>' + this.y + '</b><br/>'; 
      } 
      return tooltip; 
     } 
    }, 
    series: [{ 
       data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, {y:135.6, name: 'last'}] 

    }, 
    { 
     data: [194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2] 
    }] 

}); 
İlgili konular