Chart.jsを使用してバー文字を作成しています。各バーにパーセンテージを表示する必要があるため、 chartjs-plugin-datalabels を見つけましたが、機能させることができません。ドキュメントと例は私には明確ではありません。
これは私が得たものです:
HTML:
<canvas id="bar-chart" width="800" height="450"></canvas>
JavaScript:
// Bar chart
var valuedata= [2478,5267,734,784,433];
var valuelabel=["Africa", "Asia", "Europe", "Latin America", "North America"];
var myBarChart = new Chart(document.getElementById("bar-chart"), {
type: 'bar',
data: {
labels: valuelabel,
datasets: [
{
label: "Population (millions)",
backgroundColor: ["#3e95cd", "#8e5ea2","#3cba9f","#e8c3b9","#c45850"],
data: valuedata,
}
]
},
options: {
legend: { display: false },
title: {
display: true,
text: 'Predicted world population (millions) in 2050'
},
scales: {
xAxes: [{
gridLines: {
display:false
}
}],
yAxes: [{
gridLines: {
display:false,
drawBorder: false
},
ticks: {
display: false
}
}]
},
plugins: {
datalabels: {
color: 'white',
display: function(context) {
console.log("Algo: "+context);
return context.dataset.data[context.dataIndex] > 15;
},
font: {
weight: 'bold'
},
formatter: function(value, context) {
return context.dataIndex + ': ' + Math.round(value*100) + '%';
}
}
}
}
});
myBarChart.update();
おそらく、私が得るものから、「プラグイン」内部オプションは値を表示させるものですが、上記のコードで示したように、私にとっては機能しません。確かに何か不足していますが、私はしませんt何を知っている、誰かが私を助けることができますか?
ありがとう。
フィドル:
私が使用していたChartjsのバージョンが原因でしたが、このプラグインには2.7.0以降が必要です。