这是我的第一个问题。对于任何错误,敬请谅解。
我正在尝试使用带有 PHP 和 MySQL 数据的 Chart.js 绘制图表。我打算绘制的图表是一个简单的垂直条形图,出生年与出生人数。当我显示数组 $BIRTH_YEAR 和 $COUNTS 时,我可以看到这些值。我直到 json_encode($data_array) 才明白这一点。当我尝试在 javascript 上使用这个编码数组时,我没有得到任何输出,一个空白页面!这是我的代码。
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$data[] = array(
$row['BIRTH_YEAR']=>$row['counts'],
);
$BIRTH_YEAR[]=$row['BIRTH_YEAR'];
$COUNTS[]=$row['counts'];
}
// JSON arrays for labels and counts
$js_labels = json_encode($BIRTH_YEAR,true);
$js_cols = json_encode($COUNTS,true);
var barChartData = {
labels : '<?php echo $js_labels; ?>',
datasets : [
{
fillColor : "rgba(220,220,220,0.5)",
strokeColor : "rgba(220,220,220,1)",
data : '<?php echo $js_cols; ?>'
}
]
}
var myLine = new Chart(document.getElementById("canvas").getContext("2d")).Bar(barChartData);
我已在页面中包含所有其他必需的 HTML 元素。当我使用 Chart.js 示例文件时,我能够看到图表。唯一的问题是我不确定如何在 javascript data: 部分中包含数组。提前致谢。
你可以使用$js_cols = json_encode($COUNTS,JSON_NUMERIC_CHECK);
进而
data : <?php echo print_r($js_cols,true); ?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)