как поместить "%" в круговую диаграмму (chartjs) - PullRequest
0 голосов
/ 05 декабря 2018

Мне нужно поставить% после числа на графике:

Как: 100%

enter image description here

Это кодчто я использую, чтобы сделать диаграмму, используя диаграмму JS:

new Chart(document.getElementById("pie-chart-one"), {
    type: 'doughnut',
    data: {
        labels: ['Transmitidas', 'Não Transmitidas'],
        datasets: [{
            data: [@Model.PorcentQtdDeclaracoesStatusTransmitida, @Model.PorcentQtdDeclaracoesStatusNaoTransmitida],
            backgroundColor: backgroudColor,
            borderWidth: 1,
        }]
    },
    options: {
        legend: {
            display: true,
            position: 'bottom',
            fontSize: 10

        },
       responsive:false,
       fontsize: 11,
       layout: {
           padding: {
               left: 0,
               right: 0,
               top: 30,
               bottom: 30
           }
        }
    }
});

Ответы [ 2 ]

0 голосов
/ 17 декабря 2018

Я решаю проблему, используя обратный вызов и заголовок внутри подсказки:

options: {
        tooltips: {
            callbacks: {
                label: function (tooltipItem, data) {
                    var dataset = data.datasets[tooltipItem.datasetIndex];
                    var total = dataset.data.reduce(function (previousValue, currentValue, currentIndex, array) {
                        return previousValue + currentValue;
                    });
                    var currentValue = dataset.data[tooltipItem.index];
                    var percentage = Math.floor(((currentValue / total) * 100) + 0.5);
                    return percentage + "%";
                },                    
                title: function (tooltipItem, data) {
                    return data.labels[tooltipItem[0].index];
                }
            }
        }
0 голосов
/ 05 декабря 2018

в опциях определений ...

options: {
        tooltips: {
            enabled: true,
            mode: 'single',
            callbacks: {
                label: function(tooltipItems, data) { 
                    return tooltipItems.yLabel + ' %';
                }
            }
        },
 } 
...