gpt4 book ai didi

javascript - 在 Chart.js v 2.7.1 中的条形图顶部显示数据

转载 作者:行者123 更新时间:2023-11-29 17:47:37 25 4
gpt4 key购买 nike

我试图在 Chart.js (v 2.7.1) 中的栏顶部显示实际数据值,但它不起作用。这是我的 JSFIDDLE

到目前为止,我正在添加这段代码以使其正常工作。

showTooltips: false,
onAnimationComplete: function () {

var ctx = this.chart.ctx;
ctx.font = this.scale.font;
ctx.fillStyle = this.scale.textColor
ctx.textAlign = "center";
ctx.textBaseline = "bottom";

this.datasets.forEach(function (dataset) {
dataset.bars.forEach(function (bar) {
ctx.fillText(bar.value, bar.x, bar.y - 5);
});
})
}

我做错了什么?随意 fork fiddle 。

最佳答案

您必须添加以下代码:

Chart.plugins.register({
afterDatasetsDraw: function(chart, easing) {
// To only draw at the end of animation, check for easing === 1
var ctx = chart.ctx;

chart.data.datasets.forEach(function (dataset, i) {
var meta = chart.getDatasetMeta(i);
if (!meta.hidden) {
meta.data.forEach(function(element, index) {
// Draw the text in black, with the specified font
ctx.fillStyle = 'rgb(0, 0, 0)';

var fontSize = 16;
var fontStyle = 'normal';
var fontFamily = 'Helvetica Neue';
ctx.font = Chart.helpers.fontString(fontSize, fontStyle, fontFamily);

// Just naively convert to string for now
var dataString = dataset.data[index].toString();

// Make sure alignment settings are correct
ctx.textAlign = 'center';
ctx.textBaseline = 'middle';

var padding = 5;
var position = element.tooltipPosition();
ctx.fillText(dataString, position.x, position.y - (fontSize / 2) - padding);
});
}
});
}
});

查看更新后的Fiddle https://jsfiddle.net/ca7unnu4/

关于javascript - 在 Chart.js v 2.7.1 中的条形图顶部显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47673472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com