Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Highchart未从动态创建的数组中呈现数据_Javascript_Arrays_Highcharts - Fatal编程技术网

Javascript Highchart未从动态创建的数组中呈现数据

Javascript Highchart未从动态创建的数组中呈现数据,javascript,arrays,highcharts,Javascript,Arrays,Highcharts,我正在使用Firebase实时数据库获取数据以在Highchart中渲染。我声明了一个空数组 arrY = []; 然后在函数内部,我将x轴的值连同时间戳一起推送到数组中 arrY.push([time, parseFloat(tempC)]); 然后,当我将数组分配给系列时启动Highchart时,图表不会呈现(控制台中没有错误消息) 但是,如果我用数组的值和时间戳硬编码一个数组,并将其分配给渲染的highchart a = [[1591815122, 28],[15

我正在使用Firebase实时数据库获取数据以在Highchart中渲染。我声明了一个空数组

    arrY = [];
然后在函数内部,我将x轴的值连同时间戳一起推送到数组中

   arrY.push([time, parseFloat(tempC)]);
然后,当我将数组分配给系列时启动Highchart时,图表不会呈现(控制台中没有错误消息)

但是,如果我用数组的值和时间戳硬编码一个数组,并将其分配给渲染的highchart

    a = [[1591815122, 28],[1591815141, 28],[1591815161, 28],[1591815180, 28],[1591815200, 28]];

当我在控制台中记录这两个阵列时,它们都显示为阵列,但为什么一个工作,另一个不工作?控制台输出如下图所示


您正在努力解决的问题与JavaScript异步有关。请注意,当您使用console.log时,
arrY
是一个空数组。您需要延迟图表呈现,直到从服务器下载数据

目前,类似的情况发生了:

  • 数组已定义
  • 图表正在使用空数组进行渲染
  • 数据被下载并推送到阵列
  •     a = [[1591815122, 28],[1591815141, 28],[1591815161, 28],[1591815180, 28],[1591815200, 28]];
    
               series: [{
                    name: 'Temperature',
                    data: arrY
                }]