【发布时间】:2022-12-20 09:21:25
【问题描述】:
我正在尝试将 JSON 文件中的数据显示到 ChartJS,但是,我的 JSON 结构与我在之前的相关问题中看到的不同。检查下面的 JSON:
{
"AAPL": [
{
"Q1": -26986,
"Q2": -168099,
"Q3": -137101,
"Q4": -561990
}
]
}
我的代码试图将键用作标签,将值用作数据:
const xmlhttp4 = new XMLHttpRequest();
const url4 = 'https://api.npoint.io/ee3b3d406810c46c44e0';
xmlhttp4.open('GET', url4, true);
xmlhttp4.send();
xmlhttp4.onreadystatechange = function() {
if(this.readyState == 4 && this.status == 200) {
const datapoints = JSON.parse(this.responseText);
const data1 = datapoints[0]
const barchart = document.getElementById('insider_positions_barchart').getContext('2d');
const myBarChartAUD = new Chart(barchart, {
type: 'bar',
data: {
labels: Object.keys(data1),
datasets: [{
label: 'Net Activity',
data: Object.values(data1),
backgroundColor: [
'rgba(0, 255, 255, 0.2)',
],
borderColor: [
'rgba(0, 255, 255, 1)',
],
borderWidth: 3
}]
},
options: {
plugins: {
legend: {
display: false
}
},
maintainAspectRatio: false,
scales: {
y: {
ticks: {
color: "white"
},
grid: {
display: false
}
},
x: {
ticks: {
color: "white"
},
grid: {
display: false
}
}
}
}
})
}
}
我不确定为什么这不起作用,我猜这与我调用键和值的方式有关。除非我应该改变 JSON 结构?
【问题讨论】:
标签: javascript json chart.js