[英]How to change the color of legend in chartjs and be able to add one more legend?
[英]ChartJS different border color for legend
我發現執行此操作以及對圖例進行一些其他自定義的唯一方法是實現 圖例項界面。
這里接受的答案結合圖例項界面應該是一個好的開始。
這是我根據該答案制作的jsfiddle ,但針對 chartjs 3.7.1 進行了更新。 要關注的主要部分是:
options: {
plugins: {
legend: {
labels: {
usePointStyle: true,
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];
return {
text: label,
fillStyle: ds.backgroundColor[i],
strokeStyle: ds.legendOutline[i],
lineWidth: ds.borderWidth,
hidden: isNaN(ds.data[i]) || meta.data[i].hidden,
index: i
};
});
} else {
return [];
}
}
}
}
}
strokeStyle 是輪廓屬性,我在數據集中創建了一個名為 legendOutline 的字段。 legendOutline 和數據集中的數據都用 i 引用,所以 legendOutline[i] 指向代表 data[i] 的 label
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.