我必须用折线图显示一些实验结果。我让它适用于静态数据,但我想让它变得动态。
所以我得到的是:
我有一个折线图:
var options = {
chart: {
renderTo: 'container',
type: 'line',
},
series: [{}]
}
我正在努力制作这些数据:
data: [
[0, 29.9],
[1, 71.5],
[3, 106.4]
]
在 php 端并将其发送给 jquery,并提供给我的折线图。 我知道 JSON 编码,但是我首先应该如何在 php 中创建和数组? 我应该如何编码它并将其提供给 jquery 并提供我的折线图?
到目前为止,这适用于静态数据:
var arr = [[0, 15], [10, 50], [20, 56.5], [30, 46.5], [40, 22.1],
[50, 2.5], [60, 27.7], [70, 55.7], [80, 76.5]];
options.series[0].name = 'Occlusion';
options.series[0].data = arr;
var l = new Highcharts.Chart(options);
});
但我希望 arr 来自 php。
提前致谢。
最佳答案
如果你想创建这样的格式,你需要先重构它们。考虑这个例子:
<?php
// lets say you have a raw data like this
$php_values = array(
array(0, 15),
array(10, 50),
array(20, 56.5),
array(30, 46.5),
array(40, 22.1),
array(50, 2.5),
array(60, 27.7),
array(70, 55.7),
array(80, 76.5),
);
$temp = array();
// format each array
foreach($php_values as $key => $value) {
$temp[] = '['.implode(',', $value).']';
}
// then format the whole array
$formatted_values = '['.implode(',', $temp).']';
?>
<script type="text/javascript">
var values = <?php echo $formatted_values; ?>;
console.log(values);
</script>
Edit: as @SebastianBochan pointed out,
$formatted_values = json_encode($php_array)
works the same way (probably the best and cleanest way)
关于php - 如何在线 Highcharts 中提供具有 x 轴和 y 轴值的系列数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23992247/