Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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 如何在海图上以数组的形式显示数组?[JS]_Javascript_Arrays_Highcharts - Fatal编程技术网

Javascript 如何在海图上以数组的形式显示数组?[JS]

Javascript 如何在海图上以数组的形式显示数组?[JS],javascript,arrays,highcharts,Javascript,Arrays,Highcharts,我从服务器获取如下数据: data":[[1496640705,1583360,1583360,1583370,1583360],[1496640720,1583360,1583350,1583360,1583345],[1496640735,1583350,1583320,1583400,1583320]] 我的问题是,如何在海图上显示这些数据?每个数组的第一个元素都是X轴的日期,并且每个数组只需要Y轴的最后一个数据。如何为highchart选择这两个元素?highchart中的每个图表都以

我从服务器获取如下数据:

data":[[1496640705,1583360,1583360,1583370,1583360],[1496640720,1583360,1583350,1583360,1583345],[1496640735,1583350,1583320,1583400,1583320]]

我的问题是,如何在海图上显示这些数据?每个数组的第一个元素都是X轴的日期,并且每个数组只需要Y轴的最后一个数据。如何为highchart选择这两个元素?

highchart中的每个图表都以不同的方式接受数据。从数据数组中创建两个独立的数组xAxisyAxis,并将其值提供给highchart

var数据=[
[1496640705, 1583360, 1583360, 1583370, 1583360],
[1496640720, 1583360, 1583350, 1583360, 1583345],
[1496640735, 1583350, 1583320, 1583400, 1583320]
],
xAxis=[],
yAxis=[];
data.forEach(功能(项){
X轴推送(项目[0]);
yAxis.push(项[item.length-1])
})

log(xAxis,yAxis)
来自服务器的数据应该包含毫秒格式的日期(对于highcharts)

  var data = [
    [1496640705000, 1583360, 1583360, 1583370, 1583360],
    [1496640720000, 1583360, 1583350, 1583360, 1583345],
    [1496640735000, 1583350, 1583320, 1583400, 1583320]
  ],
//For highcharts data should be formatted as [[x,y],[x,y],...]
seresData=[]
data.forEach(function(item) {
seresData.push([item[0],item[item.length - 1]])
})
console.log(seresData)
演示代码

var数据=[
[1496640705000, 1583360, 1583360, 1583370, 1583360],
[1496640720000, 1583360, 1583350, 1583360, 1583345],
[1496640735000, 1583350, 1583320, 1583400, 1583320]
],
seresData=[]
data.forEach(功能(项){
seresData.push([item[0],item[item.length-1]]
})
//console.log(seresData)
Highcharts.chart('容器'{
图表:{
类型:“样条线”
},
标题:{
文字:“挪威维克亚夫耶莱的积雪深度”
},
副标题:{
文本:“Highcharts JS中的不规则时间数据”
},
xAxis:{
键入:“日期时间”,
dateTimeLabelFormats:{//不显示虚拟年份
月份:'%e.%b',
年份:'%b'
},
标题:{
文本:“日期”
}
},
亚克斯:{
标题:{
文字:“雪深(m)”
},
最低:0
},
工具提示:{
headerFormat:“{series.name}
”, 点格式:'{point.x:%e.%b}:{point.y:.2f}m' }, 打印选项:{ 样条曲线:{ 标记:{ 已启用:true } } }, 系列:[{ 名称:“2012-2013年冬季”, //定义数据点。所有系列都有一个虚拟年份 //为了在同一x轴上进行比较,请注意 //在JavaScript中,月份从0开始表示一月,从1开始表示二月,以此类推。 数据:seresData }] });


欢迎来到SO。请访问以查看我们更喜欢的,您可以使用
代码段编辑器添加它。作为对以前答案的补充,您应该能够使用当前数据格式并使用密钥数组将数组中的特定值与Highcharts参数相连接: