Javascript 在chart.js中使用条形图上方的粘滞图形
我有这样的设置,其中我使用动画Javascript 在chart.js中使用条形图上方的粘滞图形,javascript,chart.js,Javascript,Chart.js,我有这样的设置,其中我使用动画onComplete animation: { onComplete: function () { var chartInstance = this.chart, ctx = chartInstance.ctx; ctx.textAlign = 'center'; ctx.fillStyle = "rgba(0, 0, 0, 1)"; ctx.textBaseline
onComplete
animation: {
onComplete: function () {
var chartInstance = this.chart,
ctx = chartInstance.ctx;
ctx.textAlign = 'center';
ctx.fillStyle = "rgba(0, 0, 0, 1)";
ctx.textBaseline = 'bottom';
this.data.datasets.forEach(function (dataset, i) {
var meta = chartInstance.controller.getDatasetMeta(i);
meta.data.forEach(function (bar, index) {
var data = dataset.data[index];
ctx.fillText(data, bar._model.x, bar._model.y - 5);
});
});
}
正如您所看到的,这是可行的,图形位于条的顶部-但是当您将鼠标悬停在条上时,由于动画效果,它会闪烁
我不希望它出现在这个动画效果中,这样它就不会像这样闪烁-有没有其他方法来制作我在这里所做的,在你悬停时没有闪烁/动画?对于这个场景,而不是“onComplete”,你应该使用“onProgress”。请尝试以下代码:
animation: {
onProgress: function () {
var chartInstance = this.chart,
ctx = chartInstance.ctx;
ctx.textAlign = 'center';
ctx.fillStyle = "rgba(0, 0, 0, 1)";
ctx.textBaseline = 'bottom';
this.data.datasets.forEach(function (dataset, i) {
var meta = chartInstance.controller.getDatasetMeta(i);
meta.data.forEach(function (bar, index) {
var data = dataset.data[index];
ctx.fillText(data, bar._model.x, bar._model.y - 5);
});
});
}
这个数字应该一直出现吗?你想什么时候给他们看?他们应该一直出现在吧台上方-因此是“粘的”:)谢谢!至少有人理解我:)