javascript - 使用 PHP 和 javascript 数组的 Google 图表

标签 javascript php google-visualization

我正在尝试循环遍历数组元素来填充谷歌图表。我可以直接在 php 和 javascript 中调用数组元素,我什至还将 php 数组转换为 javascript 数组。但我只能调用数组元素而不能循环数组。

我能做什么...

<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>

我正在尝试做什么......

<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>

最佳答案

试试这个:

var myDataArray = [['Date', 'Hits']];
for (var i = 0; i < dateArray.length; i++) {
    myDataArray.push([dateArray[i], hitsArray[i]]);
}
var data = google.visualization.arrayToDataTable(myDataArray);

关于javascript - 使用 PHP 和 javascript 数组的 Google 图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24186132/

相关文章:

javascript - 我不想在 <span> 悬停时更改按钮背景

php - 为什么链接的顶部和底部有空白?

php - 将数据写入数据库时​​遇到问题

php - 为什么已经定义的环境变量需要 putenv()?

javascript - 谷歌图表 : Adding stroke to points

javascript - 如何通过 Express 获取请求获取正文?

javascript - 如何在 jquery 中获取 anchor 标记 url 哈希值?

twitter-bootstrap - Google Charts 和 Twitter Bootstrap 选项卡

javascript - 接收数据json/jquery

javascript - 突出显示 Google 可视化饼图中的一个切片