gpt4 book ai didi

javascript - 如何在chartjs上实现动态数据?

转载 作者:行者123 更新时间:2023-12-01 01:58:36 26 4
gpt4 key购买 nike

我需要你的帮助来学习如何动态地将数据从 json 文件实现到 Chartjs。我需要动态填充的字段是labelsdata

JSON File <<<

[
{
"EFICAZ_TAB_ITEM_ID":1,
"EFICAZ_PERCENTS":99
},
{
"EFICAZ_TAB_ITEM_ID":2,
"EFICAZ_PERCENTS":99
},
{
"EFICAZ_TAB_ITEM_ID":3,
"EFICAZ_PERCENTS":99
}
]


CHARTJS <<<

var ctx = document.getElementById('myChart').getContext('2d');
var chart = new Chart(ctx, {
// The type of chart we want to create
type: 'line',

// The data for our dataset
data: {
labels: [???],
datasets: [{
label: "My First dataset",
backgroundColor: 'rgb(255, 99, 132)',
borderColor: 'rgb(255, 99, 132)',
data: [???],
}]
},

// Configuration options go here
options: {}
});

最佳答案

我使用 $.ajax() 来获取 JSON 数据,并将数据保存在两个数组中,然后您可以将这些数组用于图表标签和数据。希望这有帮助!

 var lbl = [];
var dta = [];

$.ajax({
url: "test.json",
dataType: 'json',
async: false,
success: function(data) {
$.each(data, function(i, field){
lbl.push(field.EFICAZ_TAB_ITEM_ID
);
dta.push(field.EFICAZ_PERCENTS);

});
}
});


$.getJSON("test.json", function(result){
$.each(result, function(i, field){
lbl.push(field.EFICAZ_TAB_ITEM_ID
);
dta.push(field.EFICAZ_PERCENTS);

});
});


var ctx = document.getElementById("myCanvas").getContext('2d');



var chart = new Chart(ctx, {
// The type of chart we want to create
type: 'line',

// The data for our dataset
data: {
labels: lbl,
datasets: [{
label: "My First dataset",
backgroundColor: 'rgb(255, 99, 132)',
borderColor: 'rgb(255, 99, 132)',
data: dta,
}]
},

// Configuration options go here
options: {}
});

关于javascript - 如何在chartjs上实现动态数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50797963/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com