javascript - 将数据库中的数据放入 React 中的图表中
问题描述
我正在尝试将数据库中的数据放入 Chartjs 图表中,但不确定如何。
我的数据库看起来像:
GET /dwelling/room/
[
{
"room_id": 1,
"room_name": "Living Room",
"room_data": [
{
"id": 1,
"temperature": "5,15,9..."
"humidity": "9,3,10..."
...
我目前正在使用 MDB 反应库中的代码来绘制折线图:
const dataLine = {
labels: ['00:00', '01:00', '02:00', '03:00', '04:00', '05:00', '06:00', '07:00', '08:00', '09:00', '10:00', '11:00', '12:00', '13:00', '14:00', '15:00', '16:00', '17:00', '18:00', '19:00', '20:00', '21:00', '22:00', '23:00'],
datasets: [
{
fill: false,
lineTension: 0.1,
backgroundColor: 'rgba(75,192,192,0.4)',
...
pointHitRadius: 10,
data: [?]
}
]
};
我添加了一个问号,data: [?]
因为这是我想要从我的数据库中放置数据的地方。这就是我获取其他部分数据的方式:
{props.room.map(room => {
return (
<React.Fragment>
<div>{room.room_name}<div>
</React.Fragment>
...
我努力了:
var dataSet = {room.room_data[0].temperature}
var dataArray = dataSet.split(',');
...
data: [dataArray]
但是,这不起作用,因为我必须在地图之外声明变量。
我将不胜感激任何帮助!谢谢!
解决方案
您可以使用 Chartjs 的 React 绑定:https ://www.npmjs.com/package/react-chartjs-2
有关参数请参阅 Chartjs 文档: https ://www.chartjs.org/docs/latest/charts/line.html#number
但是,这不起作用,因为我必须在地图之外声明变量。-> 是什么阻止您在地图中声明变量?
推荐阅读
- javascript - 如何模拟 useState 钩子实现,以便它在测试期间实际更改状态
- angular - 如何从 Angular 4 中的 JSON 文件访问环境变量?
- fullpage.js - fullPage.js 在组件上方和下方具有正常站点
- ruby-on-rails - Rails - 使用模型回调检查关联对象是否被销毁
- c# - 尝试将 ODBC 命名参数与 SAP IQ/Sybase IQ DB 一起使用时出错
- google-apps-script - Google Apps 脚本无法从管理的 GAS 转换为特定的 Cloud 项目
- java - 输出相同时的 AssertionFailedError
- javascript - 可以循环 setTimeout 以在每次运行时延迟循环吗?
- c - 为什么 bpf 代码无法访问 cpumap_enqueue_ctx 的前 8 个字节?
- sql - 如何有效地将数据存储在文件中?