如何使chartJs的叠加条在数据为0时总是四舍五入?

问题描述 投票:1回答:1

我想出了这个小提琴:https://jsfiddle.net/2s09hqLu/,它根据需要堆叠了四舍五入的图表。但是问题是,当数据数组中的值为0时,它没有四舍五入。我一直希望将它四舍五入怎么办。那?

data: [20, 5, 0, 15, 12, 13]

enter image description here

如您所见,在黄色处它的单元没有圆角。如何解决此问题?

javascript chart.js
1个回答
0
投票

如果渲染特定项目,则可以向rounded变量添加一个附加表达式。这不是最好的方法。

var rounded = this._datasetIndex  === lastVisible || this._index === 2;

或者,您可以比较每个数据集中的值

var cond = false;

if(this._datasetIndex === 0) {
  var datasets = this._chart.data.datasets;
  var dataset = datasets[this._datasetIndex];
  cond = dataset.data[this._index] !== 0 && datasets[this._datasetIndex + 1].data[this._index] === 0;
}

var rounded = this._datasetIndex  === lastVisible || cond;
© www.soinside.com 2019 - 2024. All rights reserved.