我正在学习反应并获得 API 数据,但我不知道如何在 React Google Charts 中显示。在 React Google Charts 中显示的格式是这样的:
['Germany', 200,0],
['United States', 300,0],
['Brazil', 400,0],
['Canada', 500,0],
['France', 600,0],
['RU', 700,0],
这是我的代码:
import React, { useState, useEffect } from "react";
import Chart from "react-google-charts";
const Map = ({ url }) => {
const [stats, setStats] = useState(null);
const [values, setValues] = useState([]);
const getData = async () => {
const data = await fetch(url);
const json = await data.json();
setStats(json);
for (const key in json) {
values.push([json[key].country, json[key].active, json[key].deaths]);
}
console.log(values);
// ["Afghanistan", 5717,169] --> I receive the data perfectly but i don't know how can i display it below
};
useEffect(() => {
getData();
}, []);
return (
<div className="col-xl-12 text-center mb-3">
<h4>Hover on map to see...</h4>
<Chart
width={"100%"}
height={"350px"}
chartType="GeoChart"
options={{
displayMode: "regions",
backgroundColor: "#81d4fa",
colorAxis: {
values: [1000, 10000, 50000, 100000, 1000000],
colors: ["#00bc8c", "#f39c12", "#e74c3c", "red", "darkred"],
},
}}
data={[
["Country", "Active cases", "Deaths"],
values.map(value => value + ",") //i tried this...
]}
// Note: you will need to get a mapsApiKey for your project.
// See: https://developers.google.com/chart/interactive/docs/basic_load_libs#load-settings
mapsApiKey="AIzaSyD-9tSrke72PouQMnMX-a7eZSW0jkFMBWY"
rootProps={{ "data-testid": "1" }}
/>
</div>
);
};
export default Map;
我用我的失败尝试评论了这条线。我尝试了很多东西,但我无法显示收到的数据
谢谢你的时间