2015-07-03 14 views
6

Ich möchte das erste yAxis-Label in Highcharts verstecken. Ich kann nicht herausfinden, wie ich diese Option ausführen soll. Diese Frage steht in engem Zusammenhang mit dieser Frage: Hide first yaxis label. Aber die Lösung, die ich suche, ist für Highcharts.Verstecke zuerst das yAxis-Label in Highcharts

yaxis hide

Aus dem Bild oben, ich möchte nur für die -10 versteckt werden.

Was options muss ich hinzufügen, um dies zu erreichen?

Der unten hinzugefügte Code ist nur eine generische Funktion, die ich erstellt habe, die einen Parameter einnimmt, den ich Optionen benannt habe (ein Objekt), die ich mit einer Liste von Optionen (wie Titel, Untertitel, Serie) eingestellt habe. ..).

var hc_bubble = function(options){ 
    $(options.target).highcharts({ 
     chart: { 
     type: 'bubble', 
     zoomType: 'xy' 
     }, 
     title: { 
     text: options.title || 'unknown' 
     }, 
     subtitle: { 
     text: options.subtitle || '' 
     }, 
     xAxis: { 
     type: options.date || 'datetime', 
     labels: { 
        formatter: function() { 
         return Highcharts.dateFormat("%b %Y", this.value) 
        } 
       }, 
     title: { 
      enabled: true, 
      text: options.xTitle || 'unknown' 
     }, 
     startOnTick: true, 
     endOnTick: true, 
     showLastLabel: true 
     }, 
     yAxis: { 
     title: { 
      text: options.yTitle || 'unknown' 
     } 
     }, 
     tooltip:{ 
     headerFormat: '<b>{series.name}</b><br>', 
     pointFormat: '{point.y} ' + options.yType || 'Connections' 
     }, 
     series: options.series 
    }); 
} 
+2

[yAxis.showFirstLabel] (http://api.highcharts.com/highcharts#yAxis.showFirstLabel) auf false gesetzt. –

Antwort

2

Ich wollte schreiben, diese Frage nicht auf den ersten, weil ich habe gerade die Antwort (nach einer Weile in der Dokumentation suchen), aber ich dachte, das andere helfen könnte.

einfach sicherstellen, dass Sie die formatter callback in Ihre Etiketten Objekt hinzufügen:

yAxis: { 
    labels:{ 
     formatter: function(){ 
     if(this.value >= 0){ 
      return this.value; 
     } 
     } 
    } 
    } 

http://api.highcharts.com/highcharts#yAxis.labels.formatter

3

Während Ihre Lösung funktioniert, gibt es eine etwas allgemeinere Lösung ist vielleicht mögen Sie, wenn Ihre Absicht ist immer zu verhindern die yAchse am Boden ein Etikett mit linken:

yAxis: { 
    labels: { 
     formatter: function() { 
      if (this.isFirst) { return ''; } 
      return this.value; 
     } 
    } 
}, 

die Nutzung der isFirst Eigenschaft, die hohe Charts hat auf this verhindert Ihr Vertrauen auf "magische Zahlen" (in ähnlicher Weise gibt es einen isLast Wert, wenn Sie das versuchen möchten - obwohl ich nicht so viel Nutzen dafür sehe).

Verwandte Themen