PHP& Google图表 - 使用require_once()时数组中的数据更改

时间:2013-12-03 05:21:20

标签: javascript php google-visualization

我的问题是,当我在一个单独的文件中var_dump我的数组时,值都是正确的,但当我需要这个文件到另一个,我尝试使用javascript与我做的行,它返回我其他值,甚至擦除我阵列的部分内容。有人知道吗? 这是我用于在单独文件中生成图表的代码:

var_dump($jsRows_scatter);
?>
 <!--Load the AJAX API-->
        <script type="text/javascript" src="https://www.google.com/jsapi"></script>
            <script type="text/javascript">
function drawChart() {

        var data = new google.visualization.DataTable();
    data.addColumn('number', 'X');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'Afundamento');
    data.addColumn('number', 'Elevação');
    var foo = [<?php echo $jsRows_scatter; ?>];
      data.addRows(foo)
    var fool =[ <?php echo $jsRows_scatter1; ?>];
      data.addRows(fool);
    var fool1 =[ <?php echo $jsRows_1; ?>];
      data.addRows(fool1);  


            var options = {
          title: '',
          hAxis: {title: 'Duração (ciclos)', minValue: 0, maxValue: 10,
          logScale: 'true'
          },
          vAxis: {title: 'Intensidade (p.u)', minValue: 0, maxValue: 1},
          legend: 'none',
          pointSize: 5,
          colors:['red','#004411','green','#00FF00'],


              series: {
        // series 0 is the Scatter
        0: {
                lineWidth: 1,
        pointSize: 0

        },
        // series 1 is the Line
        1: {
        lineWidth: 1,
        pointSize: 0,


        }  
    }
        };


    var chart = new google.visualization.ScatterChart(document.getElementById('chart_div'));
    chart.draw(data, options);
} 
google.load("visualization", "1", {packages:["corechart"], callback: drawChart});
</script> 
<body>
<div id='chart_div' style="width:950px; height:300px;"></div>
</body>

var_dump($jsRows_scatter)会给我回复:string(243) "[1.0199998,null,null,null,null,0.00589003],[0.6599999,null,null,null,null,0.00589003],[4.6799991,null,null,null,null,0.5],[0.2400000,null,null,null,null,0.5],[0.2400000,null,null,null,null,0.77272727],[0.1200000,null,null,null,null,0.77272727]"
(这没关系)。 所以我使用require_once()将此数组调用为javascript google charts函数,其代码为:

function analise_desequilibrio(medicao, analise){
    var nome_analise='';
    switch(analise){
        case "unipede":
            nome_analise="Similaridade entre dias";
            document.getElementById("analises").innerHTML='<div id = "chart_div_carac_iec" style="width: 950px; text-align: center;">  </div>';
function drawChart() {

        var data = new google.visualization.DataTable();
    data.addColumn('number', 'X');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'fixo');
    data.addColumn('number', 'Afundamento');
    data.addColumn('number', 'Elevação');
    var foo = [<?php echo $jsRows_scatter;?>];
      data.addRows(foo)
    var fool =[<?php echo $jsRows_scatter1;?>];
      data.addRows(fool);
    var fool1 =[<?php echo $jsRows_1;?>];
      data.addRows(fool1);  


            var options = {
          title: '',
          hAxis: {title: 'Duração (ciclos)', minValue: 0, maxValue: 10,
          logScale: 'true'
          },
          vAxis: {title: 'Intensidade (p.u)', minValue: 0, maxValue: 1},
          legend: 'none',
          pointSize: 5,
          colors:['red','#004411','green','#00FF00'],
              series: {
        // series 0 is the Scatter
        0: {
                lineWidth: 1,
        pointSize: 0

        },
        // series 1 is the Line
        1: {
        lineWidth: 1,
        pointSize: 0,
        }  
    }
        };


    var chart = new google.visualization.ScatterChart(document.getElementById('chart_div_carac_iec'));
    chart.draw(data, options);
} 
google.load("visualization", "1", {packages:["corechart"], callback: drawChart});


            break; 

但是,即使在我使用javascript上的步骤达到函数之前,就像我在此数组文件上使用require_once()一样,我的var_dump结果:string(74) "[3,null,null,null,null,2],[1,null,null,null,null,],[,null,null,null,null,]"
这意味着以某种方式删除了大量数据。有人知道如何解决它吗?提前谢谢!

0 个答案:

没有答案