Chart.js 如何跳过绘制空/零值及其在工具提示上的值
我想跳过Chart.js 如何跳过绘制空/零值及其在工具提示上的值,chart.js,Chart.js,我想跳过chartjs折线图上的零值的一些点 我怎么做呢 预期结果 样本数据 可以使用onAnimationComplete功能禁用点和工具提示显示 var ctx = document.getElementById("myChart").getContext("2d"); var myLineChart = new Chart(ctx).Line(data, { animation: false, onAnimationComplete: function () {
chartjs
折线图上的零值的一些点
我怎么做呢
预期结果
样本数据
可以使用onAnimationComplete功能禁用点和工具提示显示
var ctx = document.getElementById("myChart").getContext("2d");
var myLineChart = new Chart(ctx).Line(data, {
animation: false,
onAnimationComplete: function () {
// prevents the update from triggering an infinite loop
if (!this.clearCycle) {
this.clearCycle = true;
this.datasets.forEach(function (dataset) {
dataset.points.forEach(function (point) {
if (point.value === 0) {
point.display = false;
point.hasValue = function () {
return false;
}
}
})
})
this.update();
}
else
delete this.clearCycle;
}
});
小提琴-
如果您使用的是动画,则逻辑需要移动到onAnimationProgress并仅执行一次,除非您不介意在动画进行时看到点。我不确定是否可以使用早期版本的Chart.js 2,因为工具提示只需将此属性添加到图表对象:
filter: x => return x.yLabel > 0
简单的一行。
我知道它很旧,但人们可能仍然感到困惑。您可以在数据中添加文本“N/a”而不是“0”值:
data: ["7", "25", "75", "78", "10", "N/A", "77", "02", "44", "N/A"]
结果是:
下面是一个示例:在哪里绑定筛选器属性。我发现了一个可行的
data: ["7", "25", "75", "78", "10", "N/A", "77", "02", "44", "N/A"]