2014-09-08 15 views
6

hinzufügen Wie bearbeite ich chartjs individuelle Strings in TooltipsWie chartjs ändern Tooltip so i individuelle Strings in Tooltips

enter image description here

Für Beispiel hinzufügen Tooltip: Ich möchte den Tooltip ändern, wie „Januar: 28 Files“oder nur "28 Files"

+1

Es gibt einen Tooltip-Konfigurations-HTML, der als Option verfügbar ist, wenn Sie die globalen Konfigurationsoptionen definieren: http://www.chartjs.org/docs/#getting-started-global-chart-configuration –

+0

@NicholasKyriakides didn ' Das merke ich. Jetzt kann ich die Vorlage tooltipTemplate ändern: "<% if (label) {%><%=label%>: <%}%><%= value %> Dateien" Danke :) – Sudharshan

Antwort

8

neu definieren globale Standard Tooltip Vorlage wie folgt:

Chart.defaults.global.tooltipTemplate = 
    "<%if (label){%><%=label%>: <%}%><%= value %>"; 

Hier ist ein weiteres Beispiel dafür ist:

var ctx = document.getElementById("canvas").getContext("2d"); 

var myBarChart = new Chart(ctx).Bar(data, { 
     tooltipTemplate: "<%= value %> Files" 
}); 
+0

Diese Lösung funktioniert nicht für V2 von chart.js. Wenn Sie Probleme haben, werfen Sie einen Blick auf meine Antwort oder auf diese [link] (http://stackoverflow.com/questions/34720530/chart-js-v2-add-prefix-or-suffix-to-tooltip- Etikett) –

0

aus anderen Antworten Zeichnung, die ich gefunden habe, die mir geholfen, anscheinend die Label-Eigenschaften können Funktionen eingestellt werden, zum Beispiel Währung zu formatieren:

var overrides = { 
 
    // show lables as currency 
 
    scaleLabel: function(label) { 
 
    return '$' + label.value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 
 
    }, 
 

 
    // String - Template string for single tooltips 
 
    tooltipTemplate: function(label) { 
 
    return '$' + label.value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 
 
    }, 
 

 
    // String - Template string for multiple tooltips 
 
    multiTooltipTemplate: function(label) { 
 
    return '$' + label.value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 
 
    } 
 
}

4

Validated Antwort funktioniert nicht mehr. Für Chart.js V2,

Chart.defaults.global.tooltipTemplate 

ist veraltet.

Stattdessen können Sie Callbacks verwenden, um die angezeigten QuickInfos zu ändern. Es gibt ein Beispiel für die Verwendung der möglichen Rückrufe in der documentation unter Chart.defaults.global.tooltips.

In Ihrem Fall würde ich Folgendes tun:

window.myLine = new Chart(chart, { 
    type: 'bar', 
    data: barChartData, 
    options: { 
      tooltips: { 
       enabled: true, 
       mode: 'single', 
       callbacks: { 
        label: function(tooltipItems, data) { 
         return tooltipItems.yLabel + ' : ' + tooltipItems.xLabel + " Files"; 
        } 
       } 
      }, 
    }  
    }); 

nicht den HTML-Meta-Tag zu setzen Vergessen:

<meta charset="UTF-8"> 

Diese Antwort war Kopie von diesen question.

+0

Das tut nichts für mich in Chart.js v2.7.1 – Tyguy7

+0

Ich habe gerade mit Version 2.7.1 versucht und es funktioniert für mich. Du tust es wahrscheinlich falsch. –

Verwandte Themen