<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 Debugger 或 Firebug 外掛程式。在 Chrome 中,您可以使用開發人員工具 (Shift + Ctl + J 鍵)。
- 搜尋 Google Visualization API 討論群組。如果貼文中無法解答您的問題,請在所有群組中張貼您的問題,並附上問題網頁的連結。