我想从我的数据库中的某些数据创建Google图表,现在我有了这段代码:
<?php
$q = mysql_connect('localhost', 'xxx', 'xxx');
mysql_select_db('xxx', $q);
?>
<?php
$sth = mysql_query("SELECT inkoop, verkoop FROM prijs WHERE inkoop >= 1 ");
$rows = array();
while($r = mysql_fetch_assoc($sth)) {
$rows[] = $r;
}
print json_encode($rows);
?>
<?php
$sth = mysql_query("SELECT tijd FROM prijs WHERE inkoop >= 1");
$cols = array();
while($c = mysql_fetch_assoc($sth)) {
$cols[] = $c;
}
print json_encode($cols);
?>
它给了我这个输出:
[{"inkoop":"516","verkoop":"484"},{"inkoop":"515","verkoop":"488"},{"inkoop":"515","verkoop":"487"}][{"tijd":"2013-12-17 23:45:00"},{"tijd":"2013-12-17 23:48:00"},{"tijd":"2013-12-17 23:52:00"}]
我需要的是这样的东西,以创建折线图:
{
"cols": [
{"id":"","label":"Topping","pattern":"","type":"string"},
{"id":"","label":"Slices","pattern":"","type":"number"}
],
"rows": [
{"c":[{"v":"Mushrooms","f":null},{"v":3,"f":null}]},
{"c":[{"v":"Onions","f":null},{"v":1,"f":null}]},
{"c":[{"v":"Olives","f":null},{"v":1,"f":null}]},
{"c":[{"v":"Zucchini","f":null},{"v":1,"f":null}]},
{"c":[{"v":"Pepperoni","f":null},{"v":2,"f":null}]}
]
}
编辑:我需要一个线条图,其中2行代表'inkoop',1代表'verkoop',如果我可以使用这样的代码:http://www.highcharts.com/stock/demo/它会更好。
提前致谢!
答案 0 :(得分:0)
我不确定我是否完全理解你的问题,但听起来你已经有了这个对象,你只需要将它们格式化得更好一点,这样你就可以将它们放入你的图表软件中了吗?
如果这就是你想要的,我想你已经走上正轨了。我将在脚本的开头创建一个新对象:
$json = new stdClass();
然后在设置$rows
和$cols
数组时,将它们分配给对象:
$json->rows = $rows;
...
$json->cols = $cols;
当你json_encode($json);
它应该看起来像你的例子。
如果您需要在理想的表单中对SQL中的数据进行额外的操作,那么通过创建对象并向其添加属性,它们都应该可行。
我希望这有帮助!