У меня есть вопрос, связанный с данными Извлечение API, в котором я должен представлять данные в диаграмме или в формате визуализации данных.Я пытаюсь использовать этот API-интерфейс в качестве источника для представления данных в формате диаграмм, чтобы подготовить свою панель инструментов, готовую к анализу данных.Пожалуйста, помогите мне, я знаю, что я немного отстаю.
App.js
import React, { Component } from "react";
import axios from "axios";
import Chart from "./chart";
class App extends Component {
constructor() {
super();
this.state = {
labels: [],
data: []
};
}
componentDidMount() {
this.getChartData();
}
getChartData() {
Date.formatMMDDYYYY = () => {
return (
this.getDate() + 1 + "/" + this.getMonth() + "/" +
this.getFullYear()
);
};
axios
.get("https://cors-anywhere.herokuapp.com/https://api.myjson.com/bins/chnmi"
)
.then(results => {
// Split timestamp and data into separate arrays
const labels = [];
const data = [];
results.forEach(packet => {
labels.push(new Date(packet.updated).formatMMDDYYYY());
data.push(parseFloat(packet.users));
});
this.setState({ data, labels });
})
.catch(error => {
console.log(error);
});
}
render() {
return (
<div>
<Chart labels={this.state.labels} data={this.state.data} />
</div>
);
}
}
export default App;
chart.js
import React, { Component } from 'react';
import {Bar} from 'react-chartjs-2';
class Chart extends Component {
render() {
const chartData = {
labels: this.props.labels,
datasets: [
{
data: this.props.data,
backgroundColor: 'rgba(255, 99, 132, 0.6)',
}
]
}
return (
<div className="chart">
<Bar
data={chartData}
options={{
title: {
display: true,
text: 'Largest cities in Delhi',
fontSize: 25
},
legend: {
display: true,
position: 'right'
}
}}
/>
</div>
);
}
}
export default Chart;