Javascript examples for Chart.js:Pie Chart
Display data label leader lines on a pie chart
<html lang="en"> <head> <title>Chart.js - Show Dataset Value in Legend</title> </head> <body translate="no"> <div style="width: 30%"> <canvas id="myChart"></canvas> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"></script> <script> window.chartColors = {//from w w w. ja v a2 s.c om red: 'rgb(255, 99, 132)', orange: 'rgb(255, 159, 64)', yellow: 'rgb(255, 205, 86)', green: 'rgb(75, 192, 192)', blue: 'rgb(54, 162, 235)', purple: 'rgb(153, 102, 255)', grey: 'rgb(231,233,237)' }; var ctx = document.getElementById("myChart"); var myChart = new Chart(ctx, { type: 'doughnut', data: { datasets: [{ data: [300, 50, 100, 40, 10], backgroundColor: [ window.chartColors.red, window.chartColors.orange, window.chartColors.yellow, window.chartColors.green, window.chartColors.blue, ], }], labels: [ "Red", "Orange", "Yellow", "Green", "Blue" ] }, options: { legend: { display: true, labels: { generateLabels: function(chart) { var data = chart.data; if (data.labels.length && data.datasets.length) { return data.labels.map(function(label, i) { var meta = chart.getDatasetMeta(0); var ds = data.datasets[0]; var arc = meta.data[i]; var custom = arc.custom || {}; var getValueAtIndexOrDefault = Chart.helpers.getValueAtIndexOrDefault; var arcOpts = chart.options.elements.arc; var fill = custom.backgroundColor ? custom.backgroundColor : getValueAtIndexOrDefault(ds.backgroundColor, i, arcOpts.backgroundColor); var stroke = custom.borderColor ? custom.borderColor : getValueAtIndexOrDefault(ds.borderColor, i, arcOpts.borderColor); var bw = custom.borderWidth ? custom.borderWidth : getValueAtIndexOrDefault(ds.borderWidth, i, arcOpts.borderWidth); return { // here is where we are adding the data values to the legend title text: label + " (" + ds.data[i].toLocaleString() + ")", fillStyle: fill, strokeStyle: stroke, lineWidth: bw, hidden: isNaN(ds.data[i]) || meta.data[i].hidden, index: i // extra data used for toggling the correct item }; }); } else { return []; } }, }, }, } }); //# sourceURL=pen.js </script> </body> </html>