我正在用react开发一个API,它返回一个数组[2],里面有另一个数组[11],里面有11个数组,里面有我需要的数据,还有一些我不需要获取。我使用axios发出get请求,我可以用console.log打印数据,我得到200,但我需要提取时间和平均值的值,并将该数据传递到图表中,有人可以帮助我吗?我有点卡住了
我试着用Map的方法,但我没有工作。
这是我尝试使用的代码:``` import React,{ useEffect,useState } from 'react';从'axios'导入axios; import { Line } from 'react-chartjs-2';
const URLAPI = 'apiurl'
try {
const response = await axios.get(URLAPI);
const data = response.data.data[2][0].map(item => item.mean);
setChartData(data);
} catch (error) {
console.log(error);
}
};
return (
<div>
<h1>Line Chart</h1>
<Line
data={{
labels: Array.from(Array(chartData.length).keys()), // Use index as
labels
datasets: [
{
data: chartData,
label: 'Mean Values',
borderColor: 'blue',
fill: false,
},
],
}}
/>
</div>
);
}
export default LineChartComponent;
1条答案
按热度按时间62lalag41#
我对你的代码做了一些修改。使用Array.prototype.flat()方法将嵌套数组展平,这样访问内部数组就更容易了。然后,您可以使用map()方法从每个内部数组中提取时间和平均值。