2017-03-07 4 views
0

Ich habe eine gestapelte Gruppensäulengrafik, wie in der unten angegebenen Geige gezeigt. In den xAxis-Beschriftungen (rote Blöcke) möchte ich die Summe der gestapelten Beträge anzeigen, die von der Summe der zweiten Spalte subtrahiert wurden. Für "Wert1" möchte ich beispielsweise 42 im Label anzeigen (100- (43 + 15)). Im Moment kann ich nur auf x-Werte zugreifen, die ich in der Formatierungsfunktion (this.value) zurückgebe. https://jsfiddle.net/er1187/n6sr0znx/HighCharts zeigen die Gesamtzahl der gestapelten Spalten in Etiketten an

xAxis: [{ 
    offset: -280, 
    tickWidth: 0, 
    lineWidth: 0, 
    categories: ['Value1', 'Value2', 'Value3'], 
    labels: { 
     x: 5, 
     useHTML: true, 
     style:{ 
     backgroundColor: 'red', 
     color: 'white' 
     }, 
     formatter: function() { 
      return this.value; 
     } 
    } 
}, { 
    linkedTo: 0, 
    categories: ['Value1', 'Value2', 'Value3'] 
}] 

Antwort

0

In der Achse Formatierer nicht Sie noch Zugriff auf die verarbeiteten Daten haben. Sie können jedoch auf die Optionen der Serie zugreifen und die Rohdaten abrufen.

formatter: function() { 
    const axis = this.axis; 
    const points = axis.series.map(series => 
    series.options.data[axis.categories.indexOf(this.value)] 
); 

    return points[2] - (points[0] + points[1]);  
} 

Beispiel: https://jsfiddle.net/n6sr0znx/2/

+0

Das funktionierte, Vielen Dank !! – ellier7

Verwandte Themen