繪製圖表

<html>
  <head>
    <!--Load the AJAX API-->
    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
    <script type="text/javascript">

      // Load the Visualization API and the piechart package.
      google.charts.load('current', {'packages':['corechart']});

      // Set a callback to run when the Google Visualization API is loaded.
      google.charts.setOnLoadCallback(drawChart);

      // Callback that creates and populates a data table, 
      // instantiates the pie chart, passes in the data and
      // draws it.
      function drawChart() {

      // Create the data table.
      var data = new google.visualization.DataTable();
      data.addColumn('string', 'Topping');
      data.addColumn('number', 'Slices');
      data.addRows([
        ['Mushrooms', 3],
        ['Onions', 1],
        ['Olives', 1],
        ['Zucchini', 1],
        ['Pepperoni', 2]
      ]);

      // Set chart options
      var options = {'title':'How Much Pizza I Ate Last Night',
                     'width':400,
                     'height':300};

      // Instantiate and draw our chart, passing in some options.
      var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
      chart.draw(data, options);
    }
    </script>
  </head>

  <body>
//Div that will hold the pie chart
    <div id="chart_div" style="width:400; height:300"></div>
  </body>
</html>

最後一個步驟是繪製圖表。首先,您必須先將要使用的圖表類別例項執行個體化,然後對該類別呼叫 draw()

將圖表執行個體化

每種圖表類型是以不同類別為基礎,請參閱圖表說明文件。舉例來說,圓餅圖是根據 google.visualization.PieChart 類別、長條圖依據 google.visualization.BarChart 類別,以此類推。您在本教學課程開始時載入的核心圖套件會包含圓餅圖和長條圖。不過,如果您想在網頁上使用樹狀圖地理圖,就必須另外載入「樹狀圖」或「地理圖」套件

Google 圖表建構函式使用單一參數:要在其中繪製視覺化圖表的 DOM 元素參照。

  var chart = new google.visualization.PieChart(document.getElementById('chart_div'));

繪製圖表

準備好資料和選項後,您就可以開始繪製圖表。

網頁必須包含 HTML 元素 (通常是 <div>),才能容納圖表。 您必須將此元素的參照傳遞至圖表,因此為其指派 ID,以便使用 document.getElementById() 擷取參照。繪製這個元素時,圖表中的任何內容都會替換為圖表。請考慮是否明確調整這個 <div> 元素的大小,但現階段請先在 <div> HTML 中指定圖表大小。

每張圖表都支援採用兩個值的 draw() 方法:保留資料的 DataTable (或 DataView) 物件,以及選用的圖表選項物件。選項物件並非必要,您可以忽略該物件,或傳入空值,使用圖表的預設選項。

呼叫 draw() 後,系統就會在頁面上繪製圖表。每次變更資料或選項並更新圖表時,都應呼叫 draw() 方法。

draw() 方法並非同步執行:也就是說,此方法會立即傳回,但可能無法立即使用所傳回的執行個體。在多數情況下,沒有問題,系統最終會繪製圖表。不過,如要在呼叫 draw() 後設定或擷取圖表中的值,您必須等待它擲回就緒事件,表示事件已填入。我們會在下一頁說明如何監聽事件。

疑難排解

如果圖表無法在網頁上繪製,以下幾種方法也許能幫您解決問題:

  • 檢查是否有錯字。請記住,JavaScript 語言區分大小寫。
    • 使用 JavaScript 除錯工具。在 Firefox 中,您可以使用 JavaScript 控制台、 Venkman DebuggerFirebug 外掛程式。在 Chrome 中,您可以使用開發人員工具 (Shift + Ctl + J 鍵)。
  • 搜尋 Google Visualization API 討論群組。如果貼文中無法解答您的問題,請在所有群組中張貼您的問題,並附上問題網頁的連結。

 

 

 

更多資訊