Rumah > Soal Jawab > teks badan
Saya agak baru menggunakan ChartJS dan saya sedang mencari cara untuk memaparkan label pada carta donat saya. Saya cuba menetapkan keterlihatan legenda kepada benar dalam pilihan tetapi masih tidak berfungsi.
var data = [{ data: [successfulBuildsCount, failureBuildsCount], labels: ["成功", "失败"], backgroundColor: [ "绿色", "红色" ], borderColor: "#fff" }]; var options = { legend: { display: true, }, title: { display: true, }, plugins: { datalabels: { formatter: (value, ctx) => { let sum = 0; let dataArr = ctx.chart.data.datasets[0].data; dataArr.map(data => { sum += data; }); let percentage = (value * 100 / sum).toFixed(2) + "%"; return percentage; }, color: '#fff', } } }; var ctx = document.getElementById("chartContainer"); var myChart = new Chart(ctx, { type: 'doughnut', data: { datasets: data }, options: options });
P粉0417587002023-09-15 16:30:04
Lagenda harus ditunjukkan secara lalai. Jika ia tidak muncul, saya mengandaikan anda menggunakan treeshaking dan belum mengimport serta mendaftar pemalam legend seperti ini:
import { Chart, Legend } from 'chart.js'; Chart.register(Legend);
Atau anda boleh pastikan anda tidak terlepas apa-apa dengan membenarkan chart.js mengimport dan mendaftarkan semuanya:
import Chart from 'chart.js/auto';