如何从Firebase构造和获取时间序列数据

问题描述 投票:0回答:1

我在Firebase中具有以下格式的实时数据库:

Firebase Data Structure

我正在使用JavaScript来获取数据并将其绘制在我的Web浏览器上。问题是我无法从中获取任何数据。找到一些通常可以得到一个值的代码,而不是基于时间序列的数据。我正在使用的当前提取过程是:

firebase.database().ref('edge-data').limitToLast(40).on('value', ts_measures => {

    let timestamps = [];
    let values = [];

    ts_measures.forEach(ts_measure => {
        console.log(ts_measure.val().timestamp, ts_measure.val().value);
        timestamps.push(moment(ts_measure.val().timestamp).format('YYYY-MM-DD HH:mm:ss'));
        values.push(ts_measure.val().value);
    });

    myPlotDiv = document.getElementById('myPlot');


    const data = [{
        x: timestamps,
        y: values
    }];

我的图打开了,但仍然空白,尽管它似乎可以识别日期间隔。我不确定我的实时数据库现在具有的结构是否是对此的最佳选择,但是过程中的任何帮助都将具有很大的价值。

谢谢!

javascript firebase-realtime-database real-time
1个回答
0
投票

我的.js文件中的此更改解决了所有问题:

ts_measures.forEach(ts_measure => {
        console.log(ts_measure.val());
        timestamps.push(moment(ts_measure.val().timestamp).format('YYYY-MM-DD HH:mm:ss'));
        values.push(ts_measure.val().temperatura);
    });
© www.soinside.com 2019 - 2024. All rights reserved.