【发布时间】:2018-06-25 12:27:01
【问题描述】:
我正在使用 Canvasjs Charts 从 PHP / MySQL 进行绘图。除了创建我的 JSON 文件之外,一切都按预期工作。
Canvasjs 要求 JSON 文件如下所示:
callback({
"dps":
[{"division":"Xaxis VALUE","units":Yaxis VALUE}]
})
但是,在创建我的 JSON 文件时,它是
[{"division":"Xaxis VALUE","units":Yaxis VALUE}]
我只想知道如何在脚本中的 sjon 文件中添加开始标签和结束标签。
这是创建 JSON 文件的代码的最后一部分:
$output_data= array();
while($row = mysqli_fetch_array($result))
{
$output_data[] = array(
'division' => $row["division"],
'units' => $row["units"]
);
}
return json_encode($output_data, JSON_NUMERIC_CHECK);
echo json_encode($output_data, JSON_NUMERIC_CHECK);
}
$file_name = 'myresult2'.'.json';
if(file_put_contents($file_name, get_data()))
{
echo $file_name. 'file created';
}
else
{
echo 'Error';
}
?>
附加数据: 这是生成图表的代码。
<script>
var chart = null;
var dataPoints = [];
window.onload = function() {
chart = new CanvasJS.Chart("chartContainer", {
animationEnabled: true,
theme: "light",
title: {
text: "Graph Header"
},
axisY: {
title: "% Verified",
titleFontSize: 12,
labelFontSize: 12,
valueFormatString: "#.##%"
},
axisX: {
title: "Division",
titleFontSize: 12,
labelFontSize: 12
},
data: [{
type: "column",
yValueFormatString: "#.##%",
dataPoints: dataPoints
}]
});
$.getJSON("myresult.json?callback=?", callback);
}
function callback(data) {
for (var i = 0; i < data.dps.length; i++) {
dataPoints.push({
label: data.dps[i].division,
y: data.dps[i].units
});
}
chart.render();
}
</script>
【问题讨论】: