我正在使用GoogleCharts API来显示具有性别分区的饼图,但是我有一个小问题,我的饼图不完整,如下图所示。
我用这个JSON数组生成它:
{"cols":[{"id":"","label":"Topping","pattern":"","type":"string"},{"id":"","label":"Slices","pattern":"","type":"number"}],"rows":[{"c":[{"v":"Homme","f":null},{"v":"2","f":null}]},{"c":[{"v":"Femme","f":null},{"v":"1","f":null}]}]}
这是我的Javascript代码
function drawSexChart() {
var jsonData = $.ajax({
url: "http://localhost/studentlink/web/js/ajax.php?sexChart",
dataType: "json",
async: false
}).responseText;
var data = new google.visualization.DataTable(jsonData);
console.log(jsonData);
var chart = new google.visualization.PieChart(document.getElementById('chartUsersBySex'));
chart.draw(data, null);
}
我不知道为什么我的馅饼不完整。
如果有人可以帮助我?
先感谢您
汤玛士
最佳答案
最后,我只是找出为什么我的馅饼不完整,然后发布解决方案以帮助将来遇到相同问题的人们。
实际上,要生成JSON字符串,我在PHP对象中使用了json_encode
PHP函数,该函数包含有关图表的所有信息。
但是实际上,我正在使用如下功能:
return json_encode($this);
结果
{"cols":[{"id":"","label":"Topping","pattern":"","type":"string"},{"id":"","label":"Slices","pattern":"","type":"number"}],"rows":[{"c":[{"v":"Homme","f":null},{"v":"2","f":null}]},{"c":[{"v":"Femme","f":null},{"v":"1","f":null}]}]}
在此结果中,我们可以看到数字代表我的值在
"
之间。但是现在,如果我生成这样的JSON String:
return json_encode($this,JSON_NUMERIC_CHECK);
结果
{"cols":[{"id":"","label":"Topping","pattern":"","type":"string"},{"id":"","label":"Slices","pattern":"","type":"number"}],"rows":[{"c":[{"v":"Homme","f":null},{"v":3,"f":null}]},{"c":[{"v":"Femme","f":null},{"v":1,"f":null}]}]}
我的号码周围的
"
字符消失了,我吃饱了!关于javascript - Google Charts Pie不完整,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35341473/