我在图表中有一个问题我有一个带有Y轴的线条是整数类型,X轴是时间型。我有一个带有10个数据点的数据集。
现在我只想要最后3个小时的总和。我知道,如何总结所有这些,但不要选择特定的内容,而无需编写一些大型代码。
因此,图表中是否内置了任何简单的解决方案。
谢谢。
我不知道我完全了解您在问什么。但是,如果您有一个数组(数据点(,并且需要采用一些最后一个元素,则可以使用 arr.slice(-3(。
使用Chart.js检查此示例:
let ctx = document.getElementById("myChart").getContext('2d');
let myChart = new Chart(ctx, {
type: 'line',
data: {
labels: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
datasets: [{
label: 'datapoints',
backgroundColor: 'rgba(0, 0, 0, 0)',
borderColor: 'rgba(255, 99, 132, 1)',
data: [12, 19, 3, 15, 2, 3, 7, 10, 5, 8],
borderWidth: 2
}]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
}
}
});
let nLastElements = 3;
let sum = myChart.data.datasets[0]
.data
.slice(-nLastElements)
.reduce((a, b) => a + b, 0);
console.log("Sum of last " + nLastElements + " elements: " + sum);
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.1/Chart.bundle.min.js"></script>
<canvas id="myChart" width="400" height="200"></canvas>