2012-08-17 35 views
0

當您知道預先創建了多少個圖形時,我已經看到很多關於在單個頁面中創建多個圖形的討論。我正在創建一個頁面,我需要繪製幾個項目,並且事先未知有多少項目。最後一張圖總是顯示出來,而前面那張沒有。在調試時,我可以看到所有的圖形都在調用draw函數時顯示,但是當下一次調用被調用時它會消失。這可能是愚蠢的,但我已經搜索了幾個小時,無法弄清楚。更改爲測試環境(版本1.1)會使所有這些文件都顯示出來,但不顯示文本。有什麼建議麼?代碼是整件事的一部分,所以我試圖創建一個硬編碼數據的壓縮版本:Google可視化僅在循環顯示數組時顯示一個圖形

<!DOCTYPE html> 
<html> 
<head> 
    <title>Summary</title> 
    <link href="assets/css/bootstrap.css" rel="stylesheet"> 
    <link href="assets/css/bootstrap-responsive.css" rel="stylesheet"> 
</head> 
<body> 
    <script type="text/javascript" src="https://www.google.com/jsapi"></script> 
    <script type="text/javascript"> 

     google.load('visualization', '1', {'packages':['corechart']}); 
     google.setOnLoadCallback(summary_go); 

     function summary_go() { 

      /* skipping a bunch of code that does some queries and pulls the data into arrays for the graphs */ 
      var graph_data = new Array(
       {title: "Potassium SerPl-sCnc", 
        head: ["Date","mmol/L"], 
        data: [[new Date("2004", "09", "23"),3.6], 
         [new Date("2005", "08", "31"),3.5], 
         [new Date("2007", "09", "01"),3.4], 
         [new Date("2008", "01", "11"),4.1], 
         [new Date("2009", "09", "30"),3.5]]}, 

       {title: "Albumin/Creat Ur-mRto", 
        head: ["Date","ug/mg{creat}"], 
        data: [[new Date("2004", "09", "23"),5], 
         [new Date("2009", "09", "30"),8]]}); 

      var labdiv = document.getElementById("lab-list"); 
      for (var i = 0; i < graph_data.length; i++) { 
       labdiv.innerHTML += "<li>" + graph_data[i]['title'] + "<div id=\"" + graph_data[i]['title'] + "\"></div></li>"; 

       var dataTable = new google.visualization.DataTable(); 
       dataTable.addColumn('date', 'Date'); 
       dataTable.addColumn('number', 'Value'); 
      dataTable.addRows(graph_data[i]['data']); 

       var chart = new google.visualization.LineChart(document.getElementById(graph_data[i]['title'])); 
       var options = { 
        vAxis: {title: graph_data[i]['head'][1]}, 
       legend: {position: 'none'}, 
      }; 

       chart.draw(dataTable, options); 
      } 
     } 
    </script> 

    <div class="container-fluid"> 
     <div class="row-fluid"> 
      <div class="span12" id="lab-list"> 
       <h3>Patient Data</h3> 
      </div> 
     </div> 
    </div><!--/.fluid-container--> 

</body> 
</html> 

謝謝!

回答

0

那麼,它看起來像是一些愚蠢的東西。 div標籤可能沒有及時爲draw draw調用,所以當我把它分解成單獨的外觀時 - 首先設置div,然後調用draw調用,它沒有任何問題。

相關問題