我从API返回了这个json数组。
[
{
"localTimestamp": 1383091200,
"swell": {
"absMinBreakingHeight": 3.255
}
},
{
"localTimestamp": 1383102000,
"swell": {
"absMinBreakingHeight": 2.968
}
}
]
我需要让它与highcharts一起工作,我完全迷失了。数据来自外部API。
我是否需要引入数组并将其更改为适合高级图表,或将高级图表指向API的URL并调整高图的代码以使用它们发送的内容。
我有来自Highcharts的示例代码,我一直在这里工作:
HTML:
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
</head>
<body>
<script>
$(document).ready(function() {
var options = {
chart: {
renderTo: 'container',
type: 'spline'
},
series: [{}]
};
var url = "jsonp.php?callback=?";
$.getJSON(url, function(data) {
options.series[0].data = data;
var chart = new Highcharts.Chart(options);
});
});
</script>
</script>
</head>
<body>
<div id="container" style="width: 100%; height: 400px; margin: 0 auto"></div>
</body>
</html>
<script type="text/javascript" src="/js/themes/gray.js"></script>
</body>
</html>
和我的PHP代码:
<?php
header("content-type: application/json");
$array = array(7,4,2,8,4,1,9,3,2,16,7,12);
echo $_GET['callback']. '('. json_encode($array) . ')';
?>
我知道php是错的(显然)我只是不知道如何格式化我的json与highcharts交谈。提前致谢 中号
要清楚,我正在尝试将我的数据(顶部)放入php数组(底部)中,格式可以由highcharts读取。
答案 0 :(得分:1)
您需要将数据(从JSON)转换为正确的格式,如对象[{x:timestamp,waveheight},{timestamp,waveheight]]
数组或数组数组,如
[[timestamp,waveheight],[timestamp,waveheight]]
通常在highcharts中,您需要使用x / y参数而不是自定义名称。