[英]Google Charts with PHP and javascript arrays
I am trying to loop through an array elements to populate a google chart. 我正在尝试遍历数组元素以填充Google图表。 I can call array elements directly in php and in javascript and I also even converted a php array into a javascript array.
我可以直接在php和javascript中调用数组元素,甚至可以将php数组转换为javascript数组。 But I can only call an array element and not loop through an array.
但是我只能调用数组元素,而不能遍历数组。
What I can do... 我可以做什么...
<script src="js/modernizr.js"></script>
<!--Load the AJAX API-->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
var dateArray = <?php echo (json_encode($arrayDate)); ?>;
var hitsArray = <?php echo (json_encode($arrayHits)); ?>;
<!---document.write(myVariable);-->
<!--Content Delivery Network Stats-->
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Date', 'Hits'],
[dateArray[0], +hitsArray[0] ],
[dateArray[1], +hitsArray[1] ],
[dateArray[2], +hitsArray[2] ]
]);
var options = { title: 'Content Delivery Network Stats',
hAxis: {title: 'Date', titleTextStyle: {color: 'red'}} };
var chart = new google.visualization.ColumnChart (document.getElementById('chart_div')); chart.draw(data, options); }
<!--Content Delivery Network Stats-->
</script>
What I am trying to do.... 我正在尝试做的...
<script src="js/modernizr.js"></script>
<!--Load the AJAX API-->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
var dateArray = <?php echo (json_encode($arrayDate)); ?>;
var hitsArray = <?php echo (json_encode($arrayHits)); ?>;
<!---document.write(myVariable);-->
<!--Content Delivery Network Stats-->
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var myDataArray = [['Date', 'Hits']];
for (var i = 0; i < dateArray.length; i++) {
myDataArray.push([dateArray[i], hitsArray[i]);
}
var data = google.visualization.arrayToDataTable(myDataArray);
var options = { title: 'Content Delivery Network Stats',
hAxis: {title: 'Date', titleTextStyle: {color: 'red'}} };
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); chart.draw(data, options); }
<!--Content Delivery Network Stats-->
</script>
Try this: 尝试这个:
var myDataArray = [['Date', 'Hits']];
for (var i = 0; i < dateArray.length; i++) {
myDataArray.push([dateArray[i], hitsArray[i]]);
}
var data = google.visualization.arrayToDataTable(myDataArray);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.