Chart JS 使用 addData 将标签添加到 x 轴
Chart JS prepend labels to x-axis with addData
我正在使用 Chart JS 构建一个动态折线图,并且我已经设法使将数据标签附加到 x 轴末尾的函数正常工作,如下所示:
addData gif
我想不通的是如何更改函数,而不是将它们附加到 x 轴的末尾(根据 gif),函数将数据标签添加到 x 轴的前面.本质上,在执行时,该函数会将数组中的新数据添加到 x 轴的开头,而不是按照当前函数的结尾。
代码如下:
<button id="addData">Add Data</button>
document.getElementById('addData').addEventListener('click', function() {
if (myChart.data.datasets.length > 0) {
var year = YEARS[myChart.data.labels.length % YEARS.length];
myChart.data.labels.push(year);
myChart.data.datasets.forEach(function(dataset) {
dataset.data.push(myChart.data.datasets.data);
});
myChart.update();
}
});
加载默认标签。
var chartData = {
labels: ["09/10", "10/11", "11/12", "12/13", "13/14", "14/15", "15/16", "16/17", "17/18", "18/19"]
加载到第一个标签“09/10”之前添加到 x 轴的附加标签。
var YEARS = ["08/09", "07/08", "06/07", "05/06, "04/05"];
我很茫然,如有任何帮助,我们将不胜感激!
而不是使用 Array.push()
, you should use Array.unshift()
如下:
myChart.data.labels.unshift(year);
myChart.data.datasets.forEach((dataset) => {
dataset.data.unshift(myChart.data.datasets.data);
});
我正在使用 Chart JS 构建一个动态折线图,并且我已经设法使将数据标签附加到 x 轴末尾的函数正常工作,如下所示:
addData gif
我想不通的是如何更改函数,而不是将它们附加到 x 轴的末尾(根据 gif),函数将数据标签添加到 x 轴的前面.本质上,在执行时,该函数会将数组中的新数据添加到 x 轴的开头,而不是按照当前函数的结尾。
代码如下:
<button id="addData">Add Data</button>
document.getElementById('addData').addEventListener('click', function() {
if (myChart.data.datasets.length > 0) {
var year = YEARS[myChart.data.labels.length % YEARS.length];
myChart.data.labels.push(year);
myChart.data.datasets.forEach(function(dataset) {
dataset.data.push(myChart.data.datasets.data);
});
myChart.update();
}
});
加载默认标签。
var chartData = {
labels: ["09/10", "10/11", "11/12", "12/13", "13/14", "14/15", "15/16", "16/17", "17/18", "18/19"]
加载到第一个标签“09/10”之前添加到 x 轴的附加标签。
var YEARS = ["08/09", "07/08", "06/07", "05/06, "04/05"];
我很茫然,如有任何帮助,我们将不胜感激!
而不是使用 Array.push()
, you should use Array.unshift()
如下:
myChart.data.labels.unshift(year);
myChart.data.datasets.forEach((dataset) => {
dataset.data.unshift(myChart.data.datasets.data);
});