หน้านี้แสดงรายการออบเจ็กต์ที่ Google Visualization API แสดง รวมถึงวิธีการมาตรฐานที่การแสดงภาพทั้งหมดแสดง
  หมายเหตุ: เนมสเปซของ Google Visualization API คือ
  google.visualization.*
หมายเหตุเกี่ยวกับอาร์เรย์
บางเบราว์เซอร์จัดการเครื่องหมายจุลภาคต่อท้ายในอาร์เรย์ JavaScript ได้ไม่ถูกต้อง ดังนั้นโปรดอย่าใช้เครื่องหมายจุลภาค แต่หากเป็นค่าว่างในช่วงกลางของอาร์เรย์ก็ไม่เป็นไร โปรดดูตัวอย่างต่อไปนี้
    data = ['a','b','c', ,]; // BAD
  
    data = ['a','b','c'];   // OK
    data = ['a','b', ,'d']; // Also OK. The third value is undefined.
คลาสตารางข้อมูล
  แสดงตารางค่าแบบ 2 มิติที่เปลี่ยนแปลงได้ หากต้องการทำสำเนาแบบอ่านอย่างเดียวของ DataTable (เลือกกรองเพื่อแสดงค่า แถว หรือคอลัมน์ที่เฉพาะเจาะจง) ให้สร้าง DataView
แต่ละคอลัมน์จะได้รับการกำหนดประเภทข้อมูล รวมถึงพร็อพเพอร์ตี้ที่ไม่บังคับหลายรายการ เช่น รหัส ป้ายกำกับ และสตริงรูปแบบ
นอกจากนี้ คุณยังกำหนดพร็อพเพอร์ตี้ที่กำหนดเอง (คู่ชื่อ/ค่า) ให้กับเซลล์ แถว คอลัมน์ หรือทั้งตารางได้อีกด้วย การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้ที่กำหนดเองที่เจาะจง เช่น การแสดงภาพตารางรองรับพร็อพเพอร์ตี้เซลล์ชื่อ "style" ซึ่งช่วยให้คุณกําหนดสตริงรูปแบบ CSS ในบรรทัดให้กับเซลล์ตารางที่แสดงผลได้ การแสดงข้อมูลผ่านภาพควรอธิบายพร็อพเพอร์ตี้ที่กำหนดเองที่รองรับในเอกสารประกอบ
ดูเพิ่มเติมที่ QueryResponse.getDataTable
เครื่องมือสร้าง
ไวยากรณ์
DataTable(opt_data, opt_version)
- opt_data
- 
    [ไม่บังคับ] ข้อมูลที่ใช้เริ่มต้นตาราง ซึ่งอาจเป็น JSON ที่แสดงผลโดยการเรียกใช้ DataTable.toJSON()ในตารางที่มีการป้อนข้อมูล หรือออบเจ็กต์ JavaScript ที่มีข้อมูลที่ใช้ในการเริ่มต้นตาราง โครงสร้างของออบเจ็กต์ลิเทอรัล JavaScript มีคำอธิบายที่นี่ หากไม่ระบุพารามิเตอร์นี้ ระบบจะแสดงผลตารางข้อมูลใหม่ที่ว่างเปล่า
- opt_version
- [ไม่บังคับ] ค่าตัวเลขที่ระบุเวอร์ชันของโปรโตคอลการใช้สาย โดยมีเพียงผู้ติดตั้งใช้งานแหล่งข้อมูลและเครื่องมือแผนภูมิเท่านั้นที่ใช้ เวอร์ชันปัจจุบันคือ 0.6
รายละเอียด
  ออบเจ็กต์ DataTable ใช้เพื่อเก็บข้อมูลที่ส่งผ่านไปยังการแสดงภาพ
  DataTable เป็นตาราง 2 มิติพื้นฐาน ข้อมูลทั้งหมดในแต่ละคอลัมน์ต้องมีประเภทข้อมูลเดียวกัน แต่ละคอลัมน์จะมีข้อบ่งชี้ที่มีประเภทข้อมูล ป้ายกำกับสำหรับคอลัมน์นั้น (ซึ่งอาจแสดงด้วยการแสดงภาพ) และรหัสที่ใช้อ้างอิงคอลัมน์ที่เจาะจงได้ (แทนการใช้ดัชนีคอลัมน์) ออบเจ็กต์ DataTable ยังรองรับแผนที่ของพร็อพเพอร์ตี้ที่กำหนดเองซึ่งกำหนดให้กับค่าที่เฉพาะเจาะจง แถว คอลัมน์ หรือ DataTable ทั้งหมดด้วย การแสดงข้อมูลผ่านภาพสามารถใช้ฟีเจอร์เหล่านี้เพื่อรองรับฟีเจอร์เพิ่มเติม เช่น การแสดงภาพตารางใช้พร็อพเพอร์ตี้ที่กำหนดเองเพื่อให้คุณกำหนดชื่อหรือรูปแบบคลาสที่กำหนดเองให้กับแต่ละเซลล์ได้
แต่ละเซลล์ในตารางจะมีค่าอยู่ เซลล์อาจมีค่า Null หรือค่าของประเภทที่ระบุโดยคอลัมน์ คุณจะเก็บข้อมูลเวอร์ชัน "ที่จัดรูปแบบ" ไว้ในเซลล์หรือไม่ก็ได้ ซึ่งเป็นข้อมูลในรูปแบบสตริงที่มีการจัดรูปแบบเพื่อการแสดงผลด้วยการแสดงข้อมูลผ่านภาพ การแสดงข้อมูลผ่านภาพสามารถใช้รูปแบบที่จัดรูปแบบสำหรับการแสดงผลได้ (แต่ไม่จำเป็น) แต่จะใช้ข้อมูลนั้นในการจัดเรียงหรือการคำนวณทุกครั้ง (เช่น การระบุตำแหน่งในกราฟเพื่อวางจุด) เช่น อาจกำหนดค่า "ต่ำ" "กลาง" และ "สูง" เป็นค่าที่จัดรูปแบบเป็นค่าเซลล์ที่เป็นตัวเลขเป็น 1, 2 และ 3
  หากต้องการเพิ่มแถวข้อมูลหลังจากเรียกใช้ตัวสร้าง คุณสามารถเรียกใช้ addRow() สำหรับแถวเดียว หรือ addRows() สำหรับหลายแถว นอกจากนี้ คุณยังเพิ่มคอลัมน์ได้ด้วยการเรียกใช้เมธอด addColumn() เรามีวิธีการนำออกสำหรับแถวและคอลัมน์ด้วย แต่แทนที่จะนำแถวหรือคอลัมน์ออก ให้พิจารณาสร้าง DataView ที่เป็นมุมมองเฉพาะของ DataTable
  หากคุณเปลี่ยนค่าใน DataTable หลังจากส่งผ่านค่าไปยังเมธอด draw() ของการแสดงภาพ การเปลี่ยนแปลงจะไม่เปลี่ยนแปลงแผนภูมิโดยทันที คุณต้องเรียกใช้ draw() อีกครั้งเพื่อแสดงการเปลี่ยนแปลง
หมายเหตุ: Google แผนภูมิจะไม่ตรวจสอบตารางข้อมูล (หากแสดง แผนภูมิอาจแสดงผลช้าลง) หากคุณระบุตัวเลขที่คาดว่าคอลัมน์ควรเป็นสตริง หรือในทางกลับกัน Google แผนภูมิจะพยายามตีความค่าในระดับที่เหมาะสม แต่จะไม่แจ้งข้อผิดพลาด
ตัวอย่าง
  ตัวอย่างต่อไปนี้สาธิตการสร้างและป้อนข้อมูล DataTable ด้วยสตริงตามตัวอักษรด้วยข้อมูลเดียวกันกับที่แสดงในตัวอย่าง JavaScript ด้านบน
var dt = new google.visualization.DataTable({
    cols: [{id: 'task', label: 'Task', type: 'string'},
           {id: 'hours', label: 'Hours per Day', type: 'number'}],
    rows: [{c:[{v: 'Work'}, {v: 11}]},
           {c:[{v: 'Eat'}, {v: 2}]},
           {c:[{v: 'Commute'}, {v: 2}]},
           {c:[{v: 'Watch TV'}, {v:2}]},
           {c:[{v: 'Sleep'}, {v:7, f:'7.000'}]}]
    }, 0.6);
  ตัวอย่างต่อไปนี้จะสร้าง DataTable ใหม่ที่ว่างเปล่า จากนั้นป้อนข้อมูลดังกล่าวด้วยตนเองด้วยข้อมูลเดียวกันกับด้านบน
var data = new google.visualization.DataTable();
data.addColumn('string', 'Task');
data.addColumn('number', 'Hours per Day');
data.addRows([
  ['Work', 11],
  ['Eat', 2],
  ['Commute', 2],
  ['Watch TV', 2],
  ['Sleep', {v:7, f:'7.000'}]
]);
    คุณสร้าง DataTable ได้โดยเรียกใช้เครื่องมือสร้างที่ไม่มีพารามิเตอร์ แล้วเพิ่มค่าโดยการเรียกใช้เมธอด addColumn()/addRows() ที่ระบุไว้ด้านล่าง หรือโดยการส่งผ่านในออบเจ็กต์ลิเทอรัล JavaScript ที่มีการป้อนข้อมูลเพื่อเริ่มต้นใช้งาน เราได้อธิบายทั้ง 2 วิธีไว้ด้านล่างนี้ คุณควรใช้อีเมลใด
  
- 
      การสร้างและเติมข้อมูลในตารางใน JavaScript โดยการเรียกใช้ addColumn(),addRow()และaddRows()เป็นโค้ดที่อ่านได้ง่าย วิธีนี้มีประโยชน์เมื่อคุณจะป้อนรหัสเอง ซึ่งช้ากว่าการใช้สัญลักษณ์ออบเจ็กต์ลิเทอรัล (อธิบายต่อไป) แต่ในตารางขนาดเล็ก (เช่น 1,000 เซลล์) คุณอาจไม่เห็นความแตกต่าง มากนัก
- 
      การประกาศโดยตรงของออบเจ็กต์ DataTableที่ใช้สัญกรณ์ออบเจ็กต์ Literal จะเร็วกว่ามากในตารางขนาดใหญ่ อย่างไรก็ตาม การใช้ไวยากรณ์ที่ถูกต้องอาจยุ่งยากซับซ้อน ให้ใช้ตัวเลือกนี้หากคุณสามารถสร้างไวยากรณ์ตามตัวอักษรของออบเจ็กต์ในโค้ดได้ ซึ่งจะช่วยลดโอกาสที่จะเกิดข้อผิดพลาด
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| 
        
         หรือ 
 | ตัวเลข | 
        เพิ่มคอลัมน์ใหม่ในตารางข้อมูล และแสดงดัชนีของคอลัมน์ใหม่ ทุกเซลล์ของคอลัมน์ใหม่จะได้รับการกำหนดค่า  ลายเซ็นแรกมีพารามิเตอร์ต่อไปนี้ 
 ลายเซ็นที่สองมีพารามิเตอร์ออบเจ็กต์เดี่ยวที่มีสมาชิกต่อไปนี้ 
 ดูเพิ่มเติม getColumnId, getColumnLabel, getColumnType, insertColumn, getColumnRole | 
| addRow(opt_cellArray) | ตัวเลข | เพิ่มแถวใหม่ในตารางข้อมูล และแสดงดัชนีของแถวใหม่ 
 ตัวอย่างเช่น data.addRow();  // Add an empty row
data.addRow(['Hermione', new Date(1999,0,1)]); // Add a row with a string and a date value.
// Add a row with two cells, the second with a formatted value.
data.addRow(['Hermione', {v: new Date(1999,0,1),
                          f: 'January First, Nineteen ninety-nine'}
]);
data.addRow(['Col1Val', null, 'Col3Val']); // Second column is undefined.
data.addRow(['Col1Val', , 'Col3Val']);     // Same as previous. | 
| addRows(numOrArray) | ตัวเลข | เพิ่มแถวใหม่ในตารางข้อมูล และแสดงดัชนีของแถวที่เพิ่มล่าสุด คุณเรียกใช้เมธอดนี้เพื่อสร้างแถวว่างใหม่ หรือด้วยข้อมูลที่ใช้ป้อนข้อมูลแถวได้ ตามที่อธิบายไว้ด้านล่าง 
 ตัวอย่างเช่น data.addRows([ ['Ivan', new Date(1977,2,28)], ['Igor', new Date(1962,7,5)], ['Felix', new Date(1983,11,17)], ['Bob', null] // No date set for Bob. ]); ดูเพิ่มเติมที่ insertRows | 
| clone() | DataTable | ส่งคืนการโคลนตารางข้อมูล ผลลัพธ์ที่ได้คือสำเนาเชิงลึกของตารางข้อมูล ยกเว้นคุณสมบัติของเซลล์ พร็อพเพอร์ตี้แถว คุณสมบัติของตาราง และพร็อพเพอร์ตี้คอลัมน์ ซึ่งเป็นสำเนาแบบตื้น ซึ่งหมายความว่าพร็อพเพอร์ตี้ที่ไม่พื้นฐานถูกคัดลอกโดยการอ้างอิง แต่พร็อพเพอร์ตี้พื้นฐานจะถูกคัดลอกตามค่า | 
| getColumnId(columnIndex) | สตริง | แสดงผลตัวระบุของคอลัมน์ที่ระบุโดยดัชนีคอลัมน์ในตารางที่สำคัญ สำหรับตารางข้อมูลที่ดึงข้อมูลโดยคำค้นหา แหล่งข้อมูลจะกำหนดตัวระบุคอลัมน์และใช้เพื่ออ้างอิงคอลัมน์ได้เมื่อใช้ภาษาคำค้นหา ดูเพิ่มเติมที่ Query.setQuery | 
| getColumnIndex(columnIdentifier) | สตริง ตัวเลข | แสดงผลดัชนีของคอลัมน์ที่ระบุโดยดัชนีคอลัมน์ รหัส หรือป้ายกำกับ หากมีอยู่ในตารางนี้ หากไม่ใช่ -1 เมื่อ columnIdentifierเป็นสตริง ระบบจะใช้เพื่อหาคอลัมน์ด้วยรหัสก่อนตามด้วยป้ายกำกับดูเพิ่มเติมที่ getColumnId, getColumnLabel | 
| getColumnLabel(columnIndex) | สตริง | แสดงผลป้ายกำกับของคอลัมน์ที่ระบุโดยดัชนีคอลัมน์ในตารางที่สำคัญ โดยทั่วไปป้ายกำกับคอลัมน์จะแสดงเป็นส่วนหนึ่งของการแสดงภาพ เช่น ป้ายกำกับคอลัมน์อาจแสดงเป็นส่วนหัวของคอลัมน์ในตาราง หรือเป็นป้ายกำกับคำอธิบายในแผนภูมิวงกลม สำหรับตารางข้อมูลที่ดึงข้อมูลตามการค้นหา ระบบจะตั้งค่าป้ายกำกับคอลัมน์โดยแหล่งข้อมูล หรือตามอนุประโยค labelของภาษาที่ใช้ค้นหาดูเพิ่มเติมที่ setColumnLabel | 
| getColumnPattern(columnIndex) | สตริง | แสดงผลรูปแบบการจัดรูปแบบที่ใช้ในการจัดรูปแบบค่าของคอลัมน์ที่ระบุ 
 
        สำหรับตารางข้อมูลที่ดึงข้อมูลตามการค้นหา ระบบจะตั้งค่ารูปแบบคอลัมน์โดยแหล่งข้อมูล หรือตามอนุประโยค  | 
| getColumnProperties(columnIndex) | ออบเจ็กต์ | 
        แสดงผลการแมปพร็อพเพอร์ตี้ทั้งหมดสำหรับคอลัมน์ที่ระบุ โปรดทราบว่าออบเจ็กต์พร็อพเพอร์ตี้จะส่งกลับมาโดยการอ้างอิง ดังนั้นการเปลี่ยนค่าในออบเจ็กต์ที่ดึงมาจะเปลี่ยนแปลงค่าใน  
 | 
| getColumnProperty(columnIndex, name) | อัตโนมัติ | 
        แสดงผลค่าของพร็อพเพอร์ตี้ที่มีชื่อ หรือ  
 ดูเพิ่มเติมที่ setColumnProperty setColumnProperties | 
| getColumnRange(columnIndex) | ออบเจ็กต์ | 
        แสดงผลค่าต่ำสุดและสูงสุดในคอลัมน์ที่ระบุ ออบเจ็กต์ที่แสดงผลมีพร็อพเพอร์ตี้  
         | 
| getColumnRole(columnIndex) | สตริง | แสดงผล role ของคอลัมน์ที่ระบุ | 
| getColumnType(columnIndex) | สตริง | แสดงผลประเภทของคอลัมน์ที่ระบุโดยดัชนีคอลัมน์ 
 
        ประเภทคอลัมน์ที่แสดงผลอาจเป็นอย่างใดอย่างหนึ่งต่อไปนี้  | 
| getDistinctValues(columnIndex) | อาร์เรย์ของวัตถุ | แสดงผลค่าที่ไม่ซ้ำกันในคอลัมน์ใดคอลัมน์หนึ่งโดยเรียงลำดับจากน้อยไปหามาก 
 
        ประเภทของออบเจ็กต์ที่แสดงผลเหมือนกับที่แสดงผลโดยเมธอด  | 
| getFilteredRows(filters) | อาร์เรย์ของวัตถุ | 
        แสดงผลดัชนีแถวสำหรับแถวที่ตรงกับตัวกรองที่ระบุทั้งหมด ระบบจะแสดงดัชนีตามลำดับจากน้อยไปมาก เอาต์พุตของวิธีการนี้เป็นอินพุตของ  
         
 
        พร็อพเพอร์ตี้ที่ไม่บังคับอีกรายการ  
        ตัวอย่าง:  | 
| getFormattedValue(rowIndex, columnIndex) | สตริง | แสดงผลค่าที่จัดรูปแบบของเซลล์ในดัชนีแถวและคอลัมน์ที่ระบุ 
 ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดรูปแบบค่าคอลัมน์ได้ที่ข้อมูลอ้างอิงภาษาของการค้นหา ดูเพิ่มเติมที่ setFormattedValue | 
| getNumberOfColumns() | ตัวเลข | แสดงผลจำนวนคอลัมน์ในตาราง | 
| getNumberOfRows() | ตัวเลข | แสดงผลจำนวนแถวในตาราง | 
| getProperties(rowIndex, columnIndex) | ออบเจ็กต์ | 
        แสดงผลการแมปคุณสมบัติทั้งหมดสำหรับเซลล์ที่ระบุ โปรดทราบว่าออบเจ็กต์พร็อพเพอร์ตี้จะส่งกลับมาโดยการอ้างอิง ดังนั้นการเปลี่ยนค่าในออบเจ็กต์ที่ดึงมาจะเปลี่ยนแปลงค่าใน  
 | 
| getProperty(rowIndex, columnIndex, name) | อัตโนมัติ | 
        แสดงผลค่าของพร็อพเพอร์ตี้ที่มีชื่อ หรือ  
 ดูเพิ่มเติมที่ setCell setProperties setProperty | 
| getRowProperties(rowIndex) | ออบเจ็กต์ | 
        แสดงผลการแมปคุณสมบัติทั้งหมดสำหรับแถวที่ระบุ โปรดทราบว่าออบเจ็กต์พร็อพเพอร์ตี้จะส่งกลับมาโดยการอ้างอิง ดังนั้นการเปลี่ยนค่าในออบเจ็กต์ที่ดึงมาจะเปลี่ยนแปลงค่าใน  
 | 
| getRowProperty(rowIndex, name) | อัตโนมัติ | 
        แสดงผลค่าของพร็อพเพอร์ตี้ที่มีชื่อ หรือ  
 ดูเพิ่มเติมที่ setRowProperty setRowProperties | 
| getSortedRows(sortColumns) | อาร์เรย์ของตัวเลข | 
        แสดงผลตารางเวอร์ชันที่จัดเรียงโดยไม่แก้ไขลำดับของข้อมูลที่สำคัญ
        หากต้องการจัดเรียงข้อมูลที่จำเป็นอย่างถาวร ให้เรียกใช้  
 
        ค่าที่แสดงผลคืออาร์เรย์ของตัวเลข แต่ละตัวเลขคือดัชนีของแถว  
        โปรดทราบว่าการจัดเรียงมีความเสถียรอย่างแน่นอน กล่าวคือหากคุณจัดเรียงแถว 2 แถวให้มีค่าเท่ากัน การจัดเรียงเดียวกันจะทำให้แถวเรียงในลำดับเดียวกันทุกครั้ง ตัวอย่าง: หากต้องการทำซ้ำในแถวที่เรียงลำดับตามคอลัมน์ที่ 3 ให้ใช้ var rowInds = data.getSortedRows([{column: 2}]);
for (var i = 0; i < rowInds.length; i++) {
  var v = data.getValue(rowInds[i], 2);
} | 
| getTableProperties | ออบเจ็กต์ | แสดงแผนที่ของคุณสมบัติทั้งหมดสำหรับตาราง | 
| getTableProperty(name) | อัตโนมัติ | 
        แสดงผลค่าของพร็อพเพอร์ตี้ที่มีชื่อ หรือ  
 ดูเพิ่มเติมที่ setTableProperties setTableProperty | 
| getValue(rowIndex, columnIndex) | ออบเจ็กต์ | แสดงผลค่าของเซลล์ในดัชนีแถวและคอลัมน์ที่ระบุ 
 ประเภทของค่าที่แสดงผลจะขึ้นอยู่กับประเภทคอลัมน์ (ดู getColumnType) ดังนี้ 
 | 
| insertColumn(columnIndex, type [,label [,id]]) | ไม่มี | แทรกคอลัมน์ใหม่ลงในตารางข้อมูลที่ดัชนีระบุ ระบบจะย้ายคอลัมน์ที่มีอยู่ทั้งหมดที่หรือหลังจากดัชนีที่ระบุไปยังดัชนีที่สูงกว่า 
 ดูเพิ่มเติมที่ addColumn | 
| insertRows(rowIndex, numberOrArray) | ไม่มี | แทรกจำนวนแถวที่ระบุที่ดัชนีแถวที่ระบุ 
 ดูเพิ่มเติมที่ addRows | 
| removeColumn(columnIndex) | ไม่มี | นำคอลัมน์ในดัชนีที่ระบุออก 
 ดูเพิ่มเติมที่ removeColumns | 
| removeColumns(columnIndex, numberOfColumns) | ไม่มี | นำจำนวนคอลัมน์ที่ระบุออกโดยเริ่มจากคอลัมน์ในดัชนีที่ระบุ 
 ดูเพิ่มเติมที่ removeColumn | 
| removeRow(rowIndex) | ไม่มี | นำแถวที่ดัชนีที่ระบุออก 
 ดูเพิ่มเติมที่ removeRows | 
| removeRows(rowIndex, numberOfRows) | ไม่มี | นำจำนวนแถวที่ระบุซึ่งเริ่มต้นจากแถวที่ดัชนีที่ระบุออก 
 โปรดดู removeRow | 
| setCell(rowIndex, columnIndex [, value [, formattedValue [, properties]]]) | ไม่มี | ตั้งค่า ค่าที่จัดรูปแบบ และ/หรือคุณสมบัติของเซลล์ 
 ดูเพิ่มเติม setValue(), setFormattedValue(), setProperty(), setProperties() | 
| setColumnLabel(columnIndex, label) | ไม่มี | ตั้งค่าป้ายกำกับของคอลัมน์ 
 ดูเพิ่มเติมที่ getColumnLabel | 
| setColumnProperty(columnIndex, name, value) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้คอลัมน์เดียว การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่setColumnProperties getColumnProperty | 
| setColumnProperties(columnIndex, properties) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้ของคอลัมน์หลายรายการ การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setColumnProperty getColumnProperty | 
| setFormattedValue(rowIndex, columnIndex, formattedValue) | ไม่มี | ตั้งค่าที่จัดรูปแบบของเซลล์ 
 ดูเพิ่มเติมที่ getFormattedValue | 
| setProperty(rowIndex, columnIndex, name, value) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้ของเซลล์ การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setCell setProperties getProperty | 
| setProperties(rowIndex, columnIndex, properties) | ไม่มี | ตั้งค่าคุณสมบัติของเซลล์หลายรายการ การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setCell setProperty getProperty | 
| setRowProperty(rowIndex, name, value) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้ของแถว การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setRowProperties getRowProperty | 
| setRowProperties(rowIndex, properties) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้หลายรายการของแถว การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setRowProperty getRowProperty | 
| setTableProperty(name, value) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้ตารางรายการเดียว การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้ตาราง แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setTableProperties getTableProperty | 
| setTableProperties(properties) | ไม่มี | ตั้งค่าพร็อพเพอร์ตี้ของตารางหลายรายการ การแสดงภาพบางรายการรองรับพร็อพเพอร์ตี้ตาราง แถว คอลัมน์ หรือเซลล์เพื่อแก้ไขการแสดงผลหรือลักษณะการทำงาน โปรดดูเอกสารประกอบเกี่ยวกับการแสดงภาพเพื่อดูพร็อพเพอร์ตี้ที่รองรับ 
 ดูเพิ่มเติมที่ setTableProperty getTableProperty | 
| setValue(rowIndex, columnIndex, value) | ไม่มี | ตั้งค่าเซลล์ นอกจากการเขียนทับค่าเซลล์ที่มีอยู่แล้ว เมธอดนี้จะล้างค่าและพร็อพเพอร์ตี้ที่จัดรูปแบบของเซลล์ด้วย 
 และดูที่ setCell, setFormattedValue, setProperty, setProperties | 
| sort(sortColumns) | ไม่มี | จัดเรียงแถวตามคอลัมน์การจัดเรียงที่ระบุ เมธอดนี้แก้ไข DataTableดูgetSortedRows()สำหรับคำอธิบาย
      รายละเอียดของการจัดเรียง วิธีนี้ไม่แสดงผลข้อมูลที่จัดเรียงดูเพิ่มเติม getSortedRows ตัวอย่าง: หากต้องการจัดเรียงตามคอลัมน์ที่ 3 แล้วจัดเรียงตามคอลัมน์ที่ 2 ให้ใช้รูปแบบ data.sort([{column: 2}, {column: 1}]); | 
| toJSON() | สตริง | แสดงผลการแทน JSON ของ DataTableที่ส่งไปยังตัวสร้างDataTableได้ เช่น{"cols":[{"id":"Col1","label":"","type":"date"}],
 "rows":[
   {"c":[{"v":"a"},{"v":"Date(2010,10,6)"}]},
   {"c":[{"v":"b"},{"v":"Date(2010,10,7)"}]}
 ]
} | 
รูปแบบพารามิเตอร์ข้อมูล JavaScript แบบตรงตัวของเครื่องมือสร้าง
  คุณเริ่มต้น DataTable ได้โดยการส่งออบเจ็กต์ลิเทอรัลสตริง JavaScript ไปยังพารามิเตอร์ data เราจะเรียกออบเจ็กต์นี้ว่าออบเจ็กต์ data คุณเขียนโค้ดออบเจ็กต์นี้ได้ด้วยตนเองตามคำอธิบายด้านล่าง หรือใช้ไลบรารี Python ตัวช่วยหากรู้วิธีใช้ Python และเว็บไซต์ของคุณใช้ Python ได้ อย่างไรก็ตาม หากคุณต้องการสร้างออบเจ็กต์ด้วยตนเอง ส่วนนี้จะอธิบายไวยากรณ์
ก่อนอื่น มาดูตัวอย่างออบเจ็กต์ JavaScript แบบง่ายที่อธิบายตารางที่มี 3 แถวและ 3 คอลัมน์ (ประเภทสตริง ตัวเลข และวันที่)
{
  cols: [{id: 'A', label: 'NEW A', type: 'string'},
         {id: 'B', label: 'B-label', type: 'number'},
         {id: 'C', label: 'C-label', type: 'date'}
  ],
  rows: [{c:[{v: 'a'},
             {v: 1.0, f: 'One'},
             {v: new Date(2008, 1, 28, 0, 31, 26), f: '2/28/08 12:31 AM'}
        ]},
         {c:[{v: 'b'},
             {v: 2.0, f: 'Two'},
             {v: new Date(2008, 2, 30, 0, 31, 26), f: '3/30/08 12:31 AM'}
        ]},
         {c:[{v: 'c'},
             {v: 3.0, f: 'Three'},
             {v: new Date(2008, 3, 30, 0, 31, 26), f: '4/30/08 12:31 AM'}
        ]}
  ],
  p: {foo: 'hello', bar: 'world!'}
}
ตอนนี้เรามาอธิบายไวยากรณ์กัน
  ออบเจ็กต์ data ประกอบด้วยพร็อพเพอร์ตี้ระดับบนสุดที่จำเป็น 2 รายการ ได้แก่ cols และ rows และพร็อพเพอร์ตี้ p ที่ไม่บังคับซึ่งเป็นแผนที่ของค่าที่กำหนดเอง
  หมายเหตุ: ชื่อพร็อพเพอร์ตี้และค่าคงที่ของสตริงทั้งหมดที่แสดงจะคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ นอกจากนี้ พร็อพเพอร์ตี้ที่อธิบายว่าเป็นการใช้ค่าสตริงควรใส่ค่าไว้ในเครื่องหมายคำพูด
  ตัวอย่างเช่น หากต้องการระบุพร็อพเพอร์ตี้ประเภทเป็นตัวเลข จะแสดงเป็น type: 'number' แต่ค่านั้นเป็นตัวเลข จะแสดงเช่นนี้: v: 42
พร็อพเพอร์ตี้ cols
  cols คืออาร์เรย์ของออบเจ็กต์ที่อธิบายรหัสและประเภทของแต่ละคอลัมน์ แต่ละพร็อพเพอร์ตี้คือออบเจ็กต์ที่มีพร็อพเพอร์ตี้ต่อไปนี้ (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
- 
    type[จำเป็น] ประเภทข้อมูลของข้อมูลในคอลัมน์ รองรับค่าสตริงต่อไปนี้ (ตัวอย่างเช่น มีพร็อพเพอร์ตี้ v: อธิบายภายหลัง)- 
        'boolean' - ค่าบูลีนของ JavaScript ("จริง" หรือ "เท็จ") ค่าตัวอย่าง:
        v:'true'
- 
        "number" - ค่าตัวเลข JavaScript ค่าตัวอย่าง: v:7,v:3.14,v:-55
- 'string' - ค่าสตริง JavaScript ค่าตัวอย่าง: v:'hello'
- 
        "date" - ออบเจ็กต์วันที่ของ JavaScript (เดือนแบบศูนย์) ที่มีการตัดเวลา ค่าตัวอย่าง: v:new Date(2008, 0, 15)
- 
        'datetime' - ออบเจ็กต์วันที่ของ JavaScript ที่รวมเวลา ค่าตัวอย่าง:
        v:new Date(2008, 0, 15, 14, 30, 45)
- 
        "timeofday" - อาร์เรย์ของตัวเลข 3 ตัวและตัวเลือกที่ 4 (ไม่บังคับ) แสดงชั่วโมง (0 หมายถึงเที่ยงคืน) นาที วินาที และมิลลิวินาที (ไม่บังคับ) ค่าตัวอย่าง:
        v:[8, 15, 0],v: [6, 12, 1, 144]
 
- 
        'boolean' - ค่าบูลีนของ JavaScript ("จริง" หรือ "เท็จ") ค่าตัวอย่าง:
        
- 
    id[Optional] รหัสสตริงของคอลัมน์ ต้องไม่ซ้ำกันในตาราง ใช้อักขระที่เป็นตัวอักษรและตัวเลขคละกันแบบพื้นฐาน เพื่อที่หน้าเว็บโฮสต์จะได้ไม่ต้องใช้ Escape ประสิทธิภาพสูงเพื่อเข้าถึงคอลัมน์ใน JavaScript โปรดระวังอย่าเลือกคำหลัก JavaScript ตัวอย่าง:id:'col_1'
- 
    label[Optional] ค่าสตริงที่การแสดงข้อมูลผ่านภาพบางรายการแสดงสำหรับคอลัมน์นี้ ตัวอย่าง:label:'Height'
- 
    pattern[ไม่บังคับ] รูปแบบสตริงที่แหล่งข้อมูลใช้เพื่อจัดรูปแบบค่าคอลัมน์ตัวเลข วันที่ หรือเวลา ชื่อนี้ใช้สำหรับการอ้างอิงเท่านั้น คุณอาจไม่จำเป็นต้องอ่านรูปแบบ และไม่จำเป็นต้องมี ไคลเอ็นต์การแสดงภาพของ Google ไม่ได้ใช้ค่านี้ (อ่านค่าที่มีการจัดรูปแบบของเซลล์) หากDataTableมาจากแหล่งข้อมูลเพื่อตอบสนองการค้นหาที่มีอนุประโยค format รูปแบบที่คุณระบุในวลีนั้นอาจแสดงในค่านี้ มาตรฐานรูปแบบที่แนะนำคือ ICU DecimalFormat และ SimpleDateFormat
- 
    p[ไม่บังคับ] ออบเจ็กต์ที่เป็นแผนที่ค่าที่กำหนดเองที่ใช้กับเซลล์ ค่าเหล่านี้เป็นประเภท JavaScript ใดก็ได้ หากการแสดงภาพรองรับพร็อพเพอร์ตี้ระดับเซลล์ ก็จะอธิบายพร็อพเพอร์ตี้นั้น มิเช่นนั้นระบบจะไม่สนใจพร็อพเพอร์ตี้นี้ เช่นp:{style: 'border: 1px solid green;'}
cols ตัวอย่าง
cols: [{id: 'A', label: 'NEW A', type: 'string'},
       {id: 'B', label: 'B-label', type: 'number'},
       {id: 'C', label: 'C-label', type: 'date'}]
พร็อพเพอร์ตี้ rows มีอาร์เรย์ของออบเจ็กต์แถว
  ออบเจ็กต์แถวแต่ละรายการมีพร็อพเพอร์ตี้ที่จำเป็น 1 รายการที่ชื่อ c ซึ่งเป็นอาร์เรย์ของเซลล์ในแถวนั้น และยังมีพร็อพเพอร์ตี้ p ที่ไม่บังคับซึ่งกำหนดแมปค่าที่กำหนดเองที่กำหนดเองเพื่อกำหนดให้กับทั้งแถว หากการแสดงภาพรองรับพร็อพเพอร์ตี้ระดับแถว ระบบจะอธิบายพร็อพเพอร์ตี้นั้น มิฉะนั้นระบบจะไม่สนใจพร็อพเพอร์ตี้นี้
แต่ละเซลล์ในตารางมีการอธิบายโดยออบเจ็กต์ที่มีพร็อพเพอร์ตี้ต่อไปนี้
- 
    v[ไม่บังคับ] ค่าของเซลล์ ประเภทข้อมูลควรตรงกับประเภทข้อมูลคอลัมน์ หากเซลล์เป็นค่าว่าง พร็อพเพอร์ตี้vควรเป็นค่าว่าง แต่ยังมีพร็อพเพอร์ตี้fและpได้อยู่
- 
    f[ไม่บังคับ] เวอร์ชันสตริงของค่าvซึ่งจัดรูปแบบสำหรับการแสดงผล โดยปกติค่าต่างๆ จะตรงกัน แต่ไม่จำเป็นต้องระบุ ดังนั้น หากคุณระบุDate(2008, 0, 1)สำหรับvคุณควรระบุ "1 มกราคม 2008" หรือสตริงดังกล่าวสำหรับพร็อพเพอร์ตี้นี้ ระบบจะไม่ตรวจสอบค่านี้กับค่าvการแสดงภาพจะไม่ใช้ค่านี้ในการคำนวณ แต่จะใช้เป็นป้ายกำกับสำหรับการแสดงผลเท่านั้น หากไม่ระบุ ระบบจะสร้างเวอร์ชันสตริงของvโดยอัตโนมัติโดยใช้ตัวจัดรูปแบบเริ่มต้น คุณจะแก้ไขค่าfได้โดยใช้ตัวจัดรูปแบบของคุณเอง หรือจะตั้งค่าด้วยsetFormattedValue()หรือsetCell()หรือดึงข้อมูลด้วยgetFormattedValue()ก็ได้
- 
    p[ไม่บังคับ] ออบเจ็กต์ที่เป็นแผนที่ค่าที่กำหนดเองที่ใช้กับเซลล์ ค่าเหล่านี้เป็นประเภท JavaScript ใดก็ได้ หากการแสดงภาพรองรับพร็อพเพอร์ตี้ระดับเซลล์ ก็จะอธิบายพร็อพเพอร์ตี้นั้น คุณเรียกดูพร็อพเพอร์ตี้เหล่านี้ได้โดยใช้เมธอดgetProperty()และgetProperties()เช่นp:{style: 'border: 1px solid green;'}
  เซลล์ในอาร์เรย์แถวควรเรียงลำดับตามคำอธิบายคอลัมน์ใน cols หากต้องการระบุเซลล์ที่เป็นค่าว่าง ให้ระบุ null, เว้นเซลล์ในอาร์เรย์ว่างไว้ หรือละเว้นสมาชิกอาร์เรย์ต่อท้าย ดังนั้น หากต้องการระบุแถวที่มีค่า Null สำหรับ 2 เซลล์แรก คุณอาจระบุ [ , , {cell_val}] หรือ [null, null, {cell_val}]
ต่อไปนี้คือตัวอย่างออบเจ็กต์ตารางที่มี 3 คอลัมน์ซึ่งมีข้อมูล 3 แถว
{
  cols: [{id: 'A', label: 'NEW A', type: 'string'},
         {id: 'B', label: 'B-label', type: 'number'},
         {id: 'C', label: 'C-label', type: 'date'}
  ],
  rows: [{c:[{v: 'a'},
             {v: 1.0, f: 'One'},
             {v: new Date(2008, 1, 28, 0, 31, 26), f: '2/28/08 12:31 AM'}
        ]},
         {c:[{v: 'b'},
             {v: 2.0, f: 'Two'},
             {v: new Date(2008, 2, 30, 0, 31, 26), f: '3/30/08 12:31 AM'}
        ]},
         {c:[{v: 'c'},
             {v: 3.0, f: 'Three'},
             {v: new Date(2008, 3, 30, 0, 31, 26), f: '4/30/08 12:31 AM'}
        ]}
  ]
}
พร็อพเพอร์ตี้ p
  พร็อพเพอร์ตี้ p ระดับตารางคือแมปของค่าที่กําหนดเองที่ใช้กับ DataTable ทั้งหมด ค่าเหล่านี้เป็นประเภท JavaScript ใดก็ได้ หากการแสดงข้อมูลผ่านภาพรองรับพร็อพเพอร์ตี้ระดับตารางข้อมูล พร็อพเพอร์ตี้จะอธิบายพร็อพเพอร์ตี้ดังกล่าว มิฉะนั้น พร็อพเพอร์ตี้นี้จะพร้อมใช้ในแอปพลิเคชัน
   เช่น p:{className: 'myDataTable'}
คลาส DataView
  มุมมองอ่านอย่างเดียวของ DataTable ที่เกี่ยวข้อง DataView อนุญาตให้เลือกเฉพาะชุดย่อยของคอลัมน์และ/หรือแถว นอกจากนี้ยังช่วยให้เรียงลำดับคอลัมน์/แถวใหม่ และทำซ้ำคอลัมน์/แถวได้
  ข้อมูลพร็อพเพอร์ตี้คือหน้าต่างแบบเรียลไทม์ใน DataTable ที่สำคัญ ไม่ใช่สแนปชอตของข้อมูลแบบคงที่
  อย่างไรก็ตาม คุณยังคงต้องระมัดระวังเมื่อเปลี่ยนโครงสร้างของตารางตามที่อธิบายไว้ที่นี่
- 
    การเพิ่มหรือการนำคอลัมน์ออกจากตารางที่สำคัญจะไม่มีผลต่อข้อมูลพร็อพเพอร์ตี้ และอาจทำให้เกิดลักษณะการทำงานที่ไม่คาดคิดในข้อมูลพร็อพเพอร์ตี้ คุณจะต้องสร้าง DataViewใหม่จากDataTableเพื่อรับการเปลี่ยนแปลงเหล่านี้
- 
    การเพิ่มหรือนำแถวออกจากตารางที่สำคัญนั้นปลอดภัย และการเปลี่ยนแปลงจะส่งผลไปยังมุมมองทันที (แต่คุณต้องเรียกใช้ draw()ในการแสดงภาพหลังจากการเปลี่ยนแปลงนี้เพื่อให้ระบบแสดงผลชุดแถวใหม่) โปรดทราบว่าหากมุมมองของคุณได้กรองแถวออกด้วยการเรียกใช้เมธอดsetRows() or hideRows()รายการใดรายการหนึ่ง และคุณเพิ่มหรือนำแถวออกจากตารางที่สำคัญ ลักษณะการทำงานจะไม่เป็นไปตามที่คาดไว้ คุณต้องสร้างDataViewใหม่เพื่อแสดงตารางใหม่
- 
    การเปลี่ยนค่าเซลล์ในเซลล์ที่มีอยู่จะปลอดภัย และระบบจะเผยแพร่การเปลี่ยนแปลงไปยัง DataViewทันที (แต่คุณต้องเรียกใช้draw()ในการแสดงภาพหลังจากการเปลี่ยนแปลงนี้เพื่อให้ระบบแสดงผลค่าเซลล์ใหม่)
  คุณยังสร้าง DataView จาก DataView อื่นได้ โปรดทราบว่าเมื่อใดก็ตามที่มีการพูดถึงตารางหรือข้อมูลพร็อพเพอร์ตี้ จะหมายถึงระดับที่อยู่ต่ำกว่าระดับนี้ กล่าวคือ ออบเจ็กต์ข้อมูลที่ใช้ในการสร้าง DataView นี้
  DataView ยังรองรับคอลัมน์ที่คำนวณด้วย ซึ่งเป็นคอลัมน์ที่มีการคำนวณค่าแบบเรียลไทม์โดยใช้ฟังก์ชันที่คุณระบุ ตัวอย่างเช่น คุณสามารถรวมคอลัมน์ที่เป็นผลรวมของคอลัมน์ก่อนหน้า 2 คอลัมน์ หรือคอลัมน์ที่คำนวณและแสดงไตรมาสตามปฏิทินจากคอลัมน์อื่น ดูรายละเอียดเพิ่มเติมได้ที่ setColumns()
  เมื่อแก้ไข DataView ด้วยการซ่อนหรือแสดงแถวหรือคอลัมน์ การแสดงภาพจะไม่ได้รับผลกระทบจนกว่าคุณจะเรียกใช้ draw() ในการแสดงภาพอีกครั้ง
  คุณรวม DataView.getFilteredRows() กับ DataView.setRows() เพื่อสร้าง DataView ที่มีข้อมูลชุดย่อยที่น่าสนใจได้ ดังที่แสดงด้านล่างนี้
var data = new google.visualization.DataTable();
data.addColumn('string', 'Employee Name');
data.addColumn('date', 'Start Date');
data.addRows(6);
data.setCell(0, 0, 'Mike');
data.setCell(0, 1, new Date(2008, 1, 28));
data.setCell(1, 0, 'Bob');
data.setCell(1, 1, new Date(2007, 5, 1));
data.setCell(2, 0, 'Alice');
data.setCell(2, 1, new Date(2006, 7, 16));
data.setCell(3, 0, 'Frank');
data.setCell(3, 1, new Date(2007, 11, 28));
data.setCell(4, 0, 'Floyd');
data.setCell(4, 1, new Date(2005, 3, 13));
data.setCell(5, 0, 'Fritz');
data.setCell(5, 1, new Date(2007, 9, 2));
// Create a view that shows everyone hired since 2007.
var view = new google.visualization.DataView(data);
view.setRows(view.getFilteredRows([{column: 1, minValue: new Date(2007, 0, 1)}]));
var table = new google.visualization.Table(document.getElementById('test_dataview'));
table.draw(view, {sortColumn: 1});
ผู้ผลิต
การสร้างอินสแตนซ์ DataView ใหม่มี 2 วิธีดังนี้
เครื่องมือสร้าง 1
var myView = new google.visualization.DataView(data)
- data
- 
      DataTableหรือDataViewที่ใช้เริ่มต้นมุมมอง โดยค่าเริ่มต้น มุมมองจะมีคอลัมน์และแถวทั้งหมดในตารางหรือมุมมองข้อมูลที่สำคัญ ตามลำดับเดิม หากต้องการซ่อนหรือแสดงแถวหรือคอลัมน์ในมุมมองนี้ ให้เรียกเมธอดset...()หรือhide...()ที่เหมาะสม
ดูเพิ่มเติม
setColumns(), hideColumns(), setRows(), hideRows()
เครื่องมือสร้าง 2
  ตัวสร้างนี้สร้าง DataView ใหม่โดยกำหนด DataView ที่เป็นอนุกรมให้กับ DataTable
  ซึ่งจะช่วยคุณสร้าง DataView ที่คุณเรียงอันดับโดยใช้ DataView.toJSON() ขึ้นใหม่
var myView = google.visualization.DataView.fromJSON(data, viewAsJson)
- ข้อมูล
- 
    ออบเจ็กต์ DataTableที่คุณใช้สร้างDataViewซึ่ง เรียกใช้DataView.toJSON()หากตารางนี้แตกต่างจากตารางเดิม คุณจะได้รับผลลัพธ์ที่คาดเดาไม่ได้
- viewAsJson
- 
    สตริง JSON ที่แสดงผลโดย DataView.toJSON()นี่คือคําอธิบายแถวที่จะแสดงหรือซ่อนจากตารางข้อมูล data
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| ดูคำอธิบายเป็นภาษา DataTable | เหมือนกับเมธอด DataTableที่เทียบเท่ากัน เว้นแต่ว่าดัชนีแถว/คอลัมน์จะอ้างอิงดัชนีในมุมมอง ไม่ใช่ในตาราง/มุมมองที่เกี่ยวข้อง | |
| getTableColumnIndex(viewColumnIndex) | ตัวเลข | 
        แสดงผลดัชนีในตาราง (หรือมุมมอง) ของคอลัมน์ที่ระบุโดยดัชนีในมุมมองนี้  
        ตัวอย่าง: หากมีการเรียก  | 
| getTableRowIndex(viewRowIndex) | ตัวเลข | 
        แสดงผลดัชนีในตารางพื้นฐาน (หรือมุมมอง) ของแถวที่ระบุโดยดัชนีในมุมมองนี้  
        ตัวอย่าง: หากมีการเรียก  | 
| getViewColumnIndex(tableColumnIndex) | ตัวเลข | 
        แสดงผลดัชนีในมุมมองนี้ที่แมปกับคอลัมน์ที่ระบุโดยดัชนีในตาราง (หรือมุมมอง) ที่เกี่ยวข้อง หากมีดัชนีดังกล่าวมากกว่า 1 รายการ จะแสดงดัชนีแรก (เล็กที่สุด) หากไม่มีดัชนีดังกล่าว (คอลัมน์ที่ระบุไม่อยู่ในมุมมอง) แสดงผล -1
         
        ตัวอย่าง: หากมีการเรียก  | 
| getViewColumns() | อาร์เรย์ของตัวเลข | 
        แสดงผลคอลัมน์ในมุมมองนี้ตามลำดับ กล่าวคือ หากคุณเรียกใช้  | 
| getViewRowIndex(tableRowIndex) | ตัวเลข | 
        แสดงผลดัชนีในมุมมองนี้ที่แมปกับแถวที่ระบุโดยดัชนีในตาราง (หรือมุมมอง) ที่เกี่ยวข้อง หากมีดัชนีดังกล่าวมากกว่า 1 รายการ จะแสดงดัชนีแรก (เล็กที่สุด) หากไม่มีดัชนีดังกล่าว (แถวที่ระบุไม่อยู่ในมุมมอง) แสดงผล -1
         
        ตัวอย่าง: หากมีการเรียก  | 
| getViewRows() | อาร์เรย์ของตัวเลข | 
        แสดงผลแถวในมุมมองนี้ตามลำดับ กล่าวคือ ถ้าคุณเรียก  | 
| hideColumns(columnIndexes) | ไม่มี | 
        ซ่อนคอลัมน์ที่ระบุจากมุมมองปัจจุบัน  
        ตัวอย่าง: หากคุณมีตารางที่มี 10 คอลัมน์ และคุณเรียกใช้  | 
| hideRows(min, max) | ไม่มี | 
        ซ่อนแถวทั้งหมดที่มีดัชนีที่อยู่ระหว่างค่าต่ำสุดและสูงสุด (รวม) จากมุมมองปัจจุบัน
        นี่เป็นไวยากรณ์ตามความสะดวกสำหรับ  | 
| hideRows(rowIndexes) | ไม่มี | 
        ซ่อนแถวที่ระบุจากมุมมองปัจจุบัน  
        ตัวอย่าง: หากคุณมีตารางที่มี 10 แถว และเรียก  | 
| setColumns(columnIndexes) | ไม่มี | ระบุคอลัมน์ที่สามารถมองเห็นได้ในมุมมองนี้ ระบบจะซ่อนคอลัมน์ที่ไม่ได้ระบุไว้ นี่คืออาร์เรย์ของดัชนีคอลัมน์ในตาราง/มุมมองที่สำคัญ หรือคอลัมน์ที่คำนวณ หากไม่ได้เรียกใช้เมธอดนี้ ค่าเริ่มต้นคือแสดงคอลัมน์ทั้งหมด นอกจากนี้ อาร์เรย์อาจมีรายการซ้ำเพื่อแสดงคอลัมน์เดียวกันหลายๆ ครั้ง คอลัมน์จะแสดงตามลำดับที่ระบุ 
 ตัวอย่าง // Show some columns directly from the underlying data.
// Shows column 3 twice.
view.setColumns([3, 4, 3, 2]);
// Underlying table has a column specifying a value in centimeters.
// The view imports this directly, and creates a calculated column
// that converts the value into inches.
view.setColumns([1,{calc:cmToInches, type:'number', label:'Height in Inches'}]);
function cmToInches(dataTable, rowNum){
  return Math.floor(dataTable.getValue(rowNum, 1) / 2.54);
} | 
| setRows(min, max) | ไม่มี | 
        ตั้งค่าแถวในมุมมองนี้เป็นดัชนีทั้งหมด (ในตาราง/มุมมองที่สำคัญ) ที่อยู่ระหว่างค่าต่ำสุดและสูงสุด (รวม) นี่เป็นไวยากรณ์ตามความสะดวกของ  | 
| setRows(rowIndexes) | ไม่มี | 
        ตั้งค่าแถวที่แสดงในมุมมองนี้ โดยอิงตามหมายเลขดัชนีจากตาราง/มุมมองที่สำคัญ
         
        ตัวอย่าง: หากต้องการสร้างมุมมองที่มีแถว 3 และเป็น 0 ของตาราง/มุมมองที่สำคัญ ให้ทำดังนี้  | 
| toDataTable() | DataTable | แสดงผลออบเจ็กต์ DataTableที่มีแถวและคอลัมน์ที่มองเห็นได้ของDataView | 
| toJSON() | string | แสดงผลแทนสตริงของ DataViewนี้ สตริงนี้ไม่มีข้อมูลจริง มีเฉพาะการตั้งค่าเฉพาะDataViewเช่น แถวและคอลัมน์ที่มองเห็นได้ คุณสามารถจัดเก็บสตริงนี้และส่งไปยัง ตัวสร้างDataView.fromJSON()แบบคงที่เพื่อสร้างมุมมองนี้อีกครั้ง ซึ่งไม่รวมคอลัมน์ที่สร้างขึ้น | 
คลาส Wrapper ของแผนภูมิ
  คลาส ChartWrapper ใช้ในการรวมแผนภูมิและจัดการการโหลด การวาด และการค้นหาแหล่งข้อมูลทั้งหมดสำหรับแผนภูมิของคุณ ชั้นเรียนจะแสดงวิธีการที่สะดวกสำหรับการตั้งค่าในแผนภูมิและวาดแผนภูมิ คลาสนี้ทำให้การอ่านจากแหล่งข้อมูลง่ายขึ้น เนื่องจากคุณไม่ต้องสร้างเครื่องจัดการ Callback ของการค้นหา และยังใช้เพื่อบันทึกแผนภูมิไว้ใช้ซ้ำได้ง่ายๆ ด้วย
  ข้อดีอีกอย่างของการใช้ ChartWrapper คือคุณสามารถลดจำนวนการโหลดไลบรารีได้โดยใช้การโหลดแบบไดนามิก นอกจากนี้ คุณไม่จำเป็นต้องโหลดแพ็กเกจอย่างชัดเจน เนื่องจาก ChartWrapper จะจัดการค้นหาและโหลดแพ็กเกจแผนภูมิให้คุณ
  ดูรายละเอียดได้จากตัวอย่างด้านล่าง
  อย่างไรก็ตาม ปัจจุบัน ChartWrapper เผยแพร่เฉพาะชุดย่อยของเหตุการณ์ที่แสดงโดยแผนภูมิ ซึ่งได้แก่ "เลือก" "พร้อม" และ "ข้อผิดพลาด" เหตุการณ์อื่นๆ จะไม่ส่งผ่านอินสแตนซ์ ChartWrapper หากต้องการรับเหตุการณ์อื่นๆ คุณต้องเรียกใช้ getChart() และสมัครใช้บริการเหตุการณ์โดยตรงในแฮนเดิลแผนภูมิ ดังที่แสดงที่นี่
var wrapper;
function drawVisualization() {
  // Draw a column chart
  wrapper = new google.visualization.ChartWrapper({
    chartType: 'ColumnChart',
    dataTable: [['Germany', 'USA', 'Brazil', 'Canada', 'France', 'RU'],
                [700, 300, 400, 500, 600, 800]],
    options: {'title': 'Countries'},
    containerId: 'visualization'
  });
  // Never called.
  google.visualization.events.addListener(wrapper, 'onmouseover', uselessHandler);
  // Must wait for the ready event in order to
  // request the chart and subscribe to 'onmouseover'.
  google.visualization.events.addListener(wrapper, 'ready', onReady);
  wrapper.draw();
  // Never called
  function uselessHandler() {
    alert("I am never called!");
  }
  function onReady() {
    google.visualization.events.addListener(wrapper.getChart(), 'onmouseover', usefulHandler);
  }
  // Called
  function usefulHandler() {
    alert("Mouseover event!");
  }
}
ผู้ผลิต
ChartWrapper(opt_spec)
- opt_spec
- [ไม่บังคับ] - ออบเจ็กต์ JSON ที่กำหนดแผนภูมิ หรือเวอร์ชันสตริงต่อเนื่องของออบเจ็กต์นั้น รูปแบบของออบเจ็กต์นี้แสดงอยู่ในเอกสารประกอบของ DrawChart() หากไม่ได้ระบุ คุณต้องตั้งค่าพร็อพเพอร์ตี้ที่เหมาะสมทั้งหมดโดยใช้เมธอด set... ที่ออบเจ็กต์นี้เปิดเผย
วิธีการ
ChartWrapper จะแสดงเมธอดเพิ่มเติมต่อไปนี้
| วิธีการ | ประเภทการแสดงผล | คำอธิบาย | 
|---|---|---|
| draw(opt_container_ref) | ไม่มี | วาดแผนภูมิ คุณต้องเรียกใช้เมธอดนี้หลังจากมีการเปลี่ยนแปลงในแผนภูมิหรือข้อมูลเพื่อแสดงการเปลี่ยนแปลงดังกล่าว 
 | 
| toJSON() | สตริง | แสดงผลเวอร์ชันสตริงของการแสดงแผนภูมิ JSON | 
| clone() | ChartWrapper | แสดงผลสำเนาเชิงลึกของ Wrapper แผนภูมิ | 
| getDataSourceUrl() | สตริง | หากแผนภูมินี้รับข้อมูลจากแหล่งข้อมูล จะแสดงผล URL ของแหล่งข้อมูลนี้ หากไม่ จะแสดงผลเป็น Null | 
| getDataTable() | google.visualization.DataTable | 
        หากแผนภูมินี้รับข้อมูลจาก  
        การเปลี่ยนแปลงที่คุณทำกับออบเจ็กต์ที่แสดงผลจะแสดงเป็นแผนภูมิเมื่อคุณเรียกใช้  | 
| getChartType() | สตริง | ชื่อคลาสของแผนภูมิที่รวม หากเป็นแผนภูมิของ Google ชื่อจะไม่เข้าเกณฑ์เป็น google.visualizationตัวอย่างเช่น หากเป็นแผนภูมิทรีแม็ปก็จะแสดงผลเป็น "Treemap" แทนที่จะเป็น "google.visualization.treemap" | 
| getChartName() | สตริง | แสดงผลชื่อแผนภูมิที่กำหนดโดย setChartName() | 
| getChart() | การอ้างอิงวัตถุแผนภูมิ | แสดงผลการอ้างอิงไปยังแผนภูมิที่สร้างโดย ChartWrapper นี้ เช่น 
        google.visualization.BarChart
      หรือ
        google.visualization.ColumnChart
      การดำเนินการนี้จะแสดงผลเป็น Null จนกว่าคุณจะเรียกใช้draw()ในออบเจ็กต์ ChartWrapper และมีการส่งเหตุการณ์พร้อมแสดง เมธอดที่เรียกใช้ในออบเจ็กต์ที่แสดงผลจะแสดงในหน้าเว็บ | 
| getContainerId() | สตริง | รหัสองค์ประกอบคอนเทนเนอร์ DOM ของแผนภูมิ | 
| getQuery() | สตริง | สตริงการค้นหาสำหรับแผนภูมินี้ (หากมี) และค้นหาแหล่งข้อมูล | 
| getRefreshInterval() | ตัวเลข | ช่วงเวลารีเฟรชสำหรับแผนภูมินี้ หากแผนภูมินี้ค้นหาแหล่งข้อมูล 0 หมายถึงไม่มีการรีเฟรช | 
| getOption(key, opt_default_val) | ประเภทใดก็ได้ | แสดงค่าตัวเลือกแผนภูมิที่ระบุ 
 | 
| getOptions() | ออบเจ็กต์ | แสดงออบเจ็กต์ตัวเลือกสำหรับแผนภูมินี้ | 
| getView() | ออบเจ็กต์หรืออาร์เรย์ | แสดงผลออบเจ็กต์เริ่มต้น DataViewในรูปแบบเดียวกับdataview.toJSON()หรืออาร์เรย์ของออบเจ็กต์ดังกล่าว | 
| setDataSourceUrl(url) | ไม่มี | ตั้งค่า URL ของแหล่งข้อมูลที่จะใช้กับแผนภูมินี้ หากคุณตั้งค่าตารางข้อมูลสำหรับออบเจ็กต์นี้ด้วย ระบบจะไม่สนใจ URL ของแหล่งข้อมูล | 
| setDataTable(table) | ไม่มี | ตั้งค่าตารางข้อมูลสำหรับแผนภูมิ ส่งผ่านค่าใดค่าหนึ่งต่อไปนี้ ได้แก่ null, ออบเจ็กต์ DataTable, การแสดง JSON ของ DataTable หรืออาร์เรย์ที่อยู่ตามไวยากรณ์ของ arrayToDataTable() | 
| setChartType(type) | ไม่มี | ตั้งค่าประเภทของแผนภูมิ ส่งชื่อคลาสของแผนภูมิที่รวมเข้าด้วยกัน หากเป็น Google แผนภูมิ โปรดอย่ามีคุณสมบัติเป็น google.visualizationตัวอย่างเช่น สำหรับแผนภูมิวงกลม ให้ส่งใน "PieChart" | 
| setChartName(name) | ไม่มี | ตั้งชื่อแผนภูมิตามต้องการ ส่วนนี้จะไม่ปรากฏที่ใดเลยในแผนภูมิ เว้นแต่แผนภูมิที่กําหนดเองได้รับการออกแบบมาให้ใช้อย่างชัดเจน | 
| setContainerId(id) | ไม่มี | ตั้งค่ารหัสขององค์ประกอบ DOM ที่มีสำหรับแผนภูมิ | 
| setQuery(query_string) | ไม่มี | ตั้งค่าสตริงการค้นหา หากแผนภูมินี้ค้นหาแหล่งข้อมูล และต้องตั้งค่า URL แหล่งข้อมูลด้วยหากระบุค่านี้ | 
| setRefreshInterval(interval) | ไม่มี | ตั้งค่าช่วงเวลารีเฟรชสำหรับแผนภูมินี้ หากแผนภูมินี้ค้นหาแหล่งข้อมูล และต้องตั้งค่า URL แหล่งข้อมูลด้วยหากระบุค่านี้ 0 หมายถึงไม่มีการรีเฟรช | 
| setOption(key, value) | ไม่มี | ตั้งค่าตัวเลือกแผนภูมิค่าเดียว โดย key คือชื่อตัวเลือก และ value คือ
      ค่า หากต้องการยกเลิกตัวเลือก ให้ส่งค่า Null โปรดทราบว่าคีย์อาจเป็นชื่อที่เข้าเกณฑ์ เช่น 'vAxis.title' | 
| setOptions(options_obj) | ไม่มี | ตั้งค่าออบเจ็กต์ตัวเลือกทั้งหมดสำหรับแผนภูมิ | 
| setView(view_spec) | ไม่มี | ตั้งค่าออบเจ็กต์เริ่มต้น DataViewซึ่งทำหน้าที่เป็นตัวกรองของข้อมูลพื้นฐาน Wrapper แผนภูมิต้องมีข้อมูลสำคัญจาก DataTable หรือแหล่งข้อมูลเพื่อใช้
      มุมมองนี้ คุณจะส่งในสตริงหรือออบเจ็กต์เริ่มต้นDataViewก็ได้ ตามที่dataview.toJSON()แสดงผล คุณยังส่งอาร์เรย์ของออบเจ็กต์เริ่มต้นDataViewได้ด้วย ซึ่งในกรณีนี้DataViewแรกในอาร์เรย์จะมีการนำไปใช้กับข้อมูลเบื้องหลังเพื่อสร้างตารางข้อมูลใหม่ และDataViewรายการที่ 2 จะใช้กับตารางข้อมูลที่เป็นผลมาจากการใช้DataViewแรก และอื่นๆ | 
กิจกรรม
  ออบเจ็กต์ ChartWrapper จะแสดงเหตุการณ์ต่อไปนี้ โปรดทราบว่าคุณต้องเรียกใช้ ChartWrapper.draw() ก่อน ระบบจึงจะส่งเหตุการณ์ได้
| ชื่อ | คำอธิบาย | พร็อพเพอร์ตี้ | 
|---|---|---|
| error | เริ่มทำงานเมื่อเกิดข้อผิดพลาดขณะพยายามแสดงผลแผนภูมิ | รหัส, ข้อความ | 
| ready | แผนภูมิพร้อมสำหรับการเรียกใช้เมธอดภายนอกแล้ว หากต้องการโต้ตอบกับแผนภูมิและวิธีเรียกใช้หลังจากที่วาดแล้ว คุณควรตั้งค่า Listener สำหรับเหตุการณ์นี้ก่อนเรียกใช้เมธอด drawและเรียกใช้หลังจากที่เหตุการณ์เริ่มทำงานแล้วเท่านั้น | ไม่มี | 
| select | เริ่มทำงานเมื่อผู้ใช้คลิกแท่งหรือคำอธิบาย เมื่อเลือกองค์ประกอบของแผนภูมิ ระบบจะเลือกเซลล์ที่เกี่ยวข้องในตารางข้อมูล และเมื่อเลือกคำอธิบาย ระบบจะเลือกคอลัมน์ที่เกี่ยวข้องในตารางข้อมูล หากต้องการดูสิ่งที่เลือก โปรดโทรหา ChartWrapper.getChart().getSelection()โปรดทราบว่าระบบจะแสดงข้อมูลนี้เมื่อแผนภูมิประเภทที่สําคัญแสดงเหตุการณ์การเลือกเท่านั้น | ไม่มี | 
ตัวอย่าง
ข้อมูลโค้ด 2 รายการต่อไปนี้จะสร้างแผนภูมิเส้นที่เทียบเท่า ตัวอย่างที่ 1 ใช้รูปแบบตัวอักษร JSON เพื่อกำหนดแผนภูมิ ตัวอย่างที่ 2 ใช้เมธอด ChartWrapper เพื่อตั้งค่าเหล่านี้
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Visualization API Sample</title>
<!--
  One script tag loads all the required libraries!
-->
<script type="text/javascript"
      src='https://www.gstatic.com/charts/loader.js'></script>
<script>
  google.charts.load('current);
  google.charts.setOnLoadCallback(drawVisualization);
  function drawVisualization() {
    var wrap = new google.visualization.ChartWrapper({
       'chartType':'LineChart',
       'dataSourceUrl':'http://spreadsheets.google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1',
       'containerId':'visualization',
       'query':'SELECT A,D WHERE D > 100 ORDER BY D',
       'options': {'title':'Population Density (people/km^2)', 'legend':'none'}
       });
     wrap.draw();
  }
</script>
</head>
<body>
  <div id="visualization" style="height: 400px; width: 400px;"></div>
</body>
</html>
แผนภูมิเดียวกัน แต่กำลังใช้เมธอด Setter:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='content-type' content='text/html; charset=utf-8'/>
<title>Google Visualization API Sample</title>
<!-- One script tag loads all the required libraries!
-->
<script type="text/javascript"
    src='https://www.gstatic.com/charts/loader.js'></script>
<script type="text/javascript">
  google.charts.load('current');
  google.charts.setOnLoadCallback(drawVisualization);
  function drawVisualization() {
    // Define the chart using setters:
    var wrap = new google.visualization.ChartWrapper();
    wrap.setChartType('LineChart');
    wrap.setDataSourceUrl('http://spreadsheets.google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1');
    wrap.setContainerId('visualization');
    wrap.setQuery('SELECT A,D WHERE D > 100 ORDER BY D');
    wrap.setOptions({'title':'Population Density (people/km^2)', 'legend':'none'});
    wrap.draw();
  }
</script>
</head>
<body>
  <div id='visualization' style='height: 400px; width: 400px;'></div>
</body>
</html>
คลาสเครื่องมือแก้ไขแผนภูมิ
  คลาส ChartEditor ใช้สำหรับเปิดกล่องโต้ตอบในหน้าเว็บที่ช่วยให้ผู้ใช้ปรับแต่งการแสดงภาพได้อย่างรวดเร็ว
วิธีใช้ ChartEditor
- 
    โหลดแพ็กเกจ charteditorในgoogle.charts.load()ให้โหลดแพ็กเกจ "charteditor" คุณไม่จำเป็นต้องโหลดแพ็กเกจสำหรับประเภทแผนภูมิที่คุณแสดงผลในตัวแก้ไข เครื่องมือแก้ไขแผนภูมิจะโหลดแพ็กเกจตามที่คุณต้องการ
- 
    สร้างออบเจ็กต์ ChartWrapperที่กำหนดแผนภูมิให้ผู้ใช้ปรับแต่ง แผนภูมินี้จะแสดงในกล่องโต้ตอบและผู้ใช้ใช้ตัวแก้ไขเพื่อออกแบบแผนภูมิใหม่ เปลี่ยนประเภทแผนภูมิ หรือแม้กระทั่งเปลี่ยนข้อมูลต้นฉบับ
- 
    สร้างอินสแตนซ์ ChartEditor ใหม่และลงทะเบียนเพื่อฟังเหตุการณ์ "ok" ระบบจะส่งเหตุการณ์นี้เมื่อผู้ใช้คลิกปุ่ม "ตกลง" บนกล่องโต้ตอบ เมื่อได้รับแล้ว คุณควรเรียกใช้ ChartEditor.getChartWrapper()เพื่อเรียกข้อมูลแผนภูมิที่ผู้ใช้แก้ไข
- 
    โทรหา ChartEditor.openDialog()ซึ่งผ่านในChartWrapperการดำเนินการนี้จะเปิดกล่องโต้ตอบ ปุ่มกล่องโต้ตอบช่วยให้ผู้ใช้ปิดเครื่องมือแก้ไขได้ อินสแตนซ์ChartEditorพร้อมใช้งานตราบเท่าที่อยู่ในขอบเขต อินสแตนซ์จะไม่ถูกทำลายโดยอัตโนมัติหลังจากที่ผู้ใช้ปิดกล่องโต้ตอบ
- หากต้องการอัปเดตแผนภูมิในโค้ด โปรดโทรไปที่ setChartWrapper()
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| openDialog(chartWrapper, opt_options) | null | 
        เปิดเครื่องมือแก้ไขแผนภูมิเป็นกล่องโต้ตอบที่ฝังอยู่ในหน้า ฟังก์ชันดังกล่าวจะแสดงผลทันทีโดยไม่ต้องรอให้กล่องโต้ตอบปิด หากคุณไม่สูญเสียขอบเขตของอินสแตนซ์ คุณจะเรียกใช้  
 | 
| getChartWrapper() | ChartWrapper | แสดงผล ChartWrapperซึ่งแสดงแผนภูมิพร้อมการแก้ไขผู้ใช้ | 
| setChartWrapper(chartWrapper) | null | ใช้วิธีนี้เพื่ออัปเดตแผนภูมิที่แสดงผลในตัวแก้ไข 
        chartWrapper - ออบเจ็กต์  | 
| closeDialog() | null | ปิดกล่องโต้ตอบของเครื่องมือแก้ไขแผนภูมิ | 
ตัวเลือก
เครื่องมือแก้ไขแผนภูมิรองรับตัวเลือกต่อไปนี้
| ชื่อ | ประเภท | ค่าเริ่มต้น | คำอธิบาย | 
|---|---|---|---|
| dataSourceInput | แฮนเดิลองค์ประกอบหรือ "urlbox" | null | ใช้ค่านี้เพื่อให้ผู้ใช้สามารถระบุแหล่งข้อมูลสำหรับแผนภูมิ พร็อพเพอร์ตี้นี้อาจเป็นค่าใดค่าหนึ่งจาก 2 ค่าต่อไปนี้ 
 | 
กิจกรรม
เครื่องมือแก้ไขแผนภูมิจะแสดงเหตุการณ์ต่อไปนี้
| ชื่อ | คำอธิบาย | พร็อพเพอร์ตี้ | 
|---|---|---|
| ok | เริ่มทำงานเมื่อผู้ใช้คลิกปุ่ม "ตกลง" บนกล่องโต้ตอบ หลังจากได้รับวิธีการนี้แล้ว คุณควรเรียกใช้ getChartWrapper()เพื่อเรียกข้อมูลแผนภูมิที่กำหนดค่าโดยผู้ใช้ | ไม่มี | 
| cancel | เริ่มทำงานเมื่อผู้ใช้คลิกปุ่ม "ยกเลิก" บนกล่องโต้ตอบ | ไม่มี | 
ตัวอย่าง
  โค้ดตัวอย่างต่อไปนี้จะเปิดกล่องโต้ตอบของเครื่องมือแก้ไขแผนภูมิที่มีแผนภูมิเส้น หากผู้ใช้คลิก "ตกลง" ระบบจะบันทึกแผนภูมิที่แก้ไขไว้ใน <div> ที่ระบุไว้ในหน้า
<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
  <title>
    Google Visualization API Sample
  </title>
  <script type="text/javascript"
    src="https://www.gstatic.com/charts/loader.js"></script>
  <script type="text/javascript">
    google.charts.load('current', {packages: ['charteditor']});
  </script>
  <script type="text/javascript">
    google.charts.setOnLoadCallback(loadEditor);
    var chartEditor = null;
    function loadEditor() {
      // Create the chart to edit.
      var wrapper = new google.visualization.ChartWrapper({
         'chartType':'LineChart',
         'dataSourceUrl':'http://spreadsheets.google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1',
         'query':'SELECT A,D WHERE D > 100 ORDER BY D',
         'options': {'title':'Population Density (people/km^2)', 'legend':'none'}
      });
      chartEditor = new google.visualization.ChartEditor();
      google.visualization.events.addListener(chartEditor, 'ok', redrawChart);
      chartEditor.openDialog(wrapper, {});
    }
    // On "OK" save the chart to a <div> on the page.
    function redrawChart(){
      chartEditor.getChartWrapper().draw(document.getElementById('vis_div'));
    }
  </script>
</head>
<body>
  <div id="vis_div" style="height: 400px; width: 600px;"></div>
</body>
</html>
วิธีการจัดการข้อมูล
  เนมสเปซ google.visualization.data มีเมธอดแบบคงที่เพื่อดำเนินการแบบเดียวกับ SQL บนออบเจ็กต์ DataTable เช่น การรวมหรือจัดกลุ่มตามค่าคอลัมน์
เนมสเปซ google.visualization.data จะแสดงเมธอดต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.data.group | ดำเนินการ SQL GROUP BY เพื่อแสดงผลตารางที่จัดกลุ่มตามค่าในคอลัมน์ที่ระบุ | 
| google.visualization.data.join | รวมตารางข้อมูล 2 ตารางในคอลัมน์คีย์อย่างน้อย 1 คอลัมน์ | 
group()
  รับออบเจ็กต์ DataTable ที่มีการป้อนข้อมูลและดำเนินการ GROUP BY ที่คล้ายกับ SQL โดยแสดงผลตารางที่มีแถวที่จัดกลุ่มตามค่าคอลัมน์ที่ระบุ โปรดทราบว่าการดำเนินการนี้จะไม่แก้ไขอินพุต DataTable
ตารางที่แสดงผลมี 1 แถวสำหรับชุดค่าผสมแต่ละชุดในคอลัมน์คีย์ที่ระบุ แต่ละแถวจะมีคอลัมน์คีย์และอีก 1 คอลัมน์ที่มีค่าคอลัมน์รวมจากทุกแถวที่ตรงกับชุดคีย์ (เช่น ผลรวมหรือจำนวนค่าทั้งหมดในคอลัมน์ที่ระบุ)
  เนมสเปซ google.visualization.data มีค่าการรวมที่เป็นประโยชน์หลายค่า (เช่น sum และ count) แต่คุณจะกำหนดค่าของคุณเองได้ (เช่น standardDeviation หรือ secondHighest) โดยจะมีคำแนะนำเกี่ยวกับวิธีการกำหนดผู้รวบรวมข้อมูลของคุณเอง
  หลังคำอธิบายวิธีการ
ไวยากรณ์
google.visualization.data.group(data_table, keys, columns)
- data_table
- 
    อินพุต DataTableการแก้ไขนี้จะไม่เปลี่ยนแปลงโดยการเรียกใช้group()
- คีย์
- 
    อาร์เรย์ของตัวเลขและ/หรือออบเจ็กต์ที่ระบุคอลัมน์ที่จะจัดกลุ่ม ตารางผลลัพธ์จะมีทุกคอลัมน์ในอาร์เรย์นี้ และทุกคอลัมน์ใน columns หากเป็นตัวเลข นี่คือดัชนีคอลัมน์ของอินพุต DataTableเพื่อจัดกลุ่ม หากเป็นออบเจ็กต์ จะมีฟังก์ชันที่แก้ไขคอลัมน์ที่ระบุได้ (เช่น เพิ่ม 1 ให้กับค่าในคอลัมน์นั้น) ออบเจ็กต์ต้องมีพร็อพเพอร์ตี้ต่อไปนี้- column - ตัวเลขที่เป็นดัชนีคอลัมน์จาก dt ที่จะนำการเปลี่ยนรูปแบบไปใช้
- modifier - ฟังก์ชันที่ยอมรับค่า 1 ค่า (ค่าเซลล์ในคอลัมน์นั้นสำหรับแต่ละแถว) และแสดงผลค่าที่แก้ไข ฟังก์ชันนี้ใช้ปรับเปลี่ยนค่าคอลัมน์เพื่อช่วยในการจัดกลุ่ม เช่น การเรียกใช้ฟังก์ชัน "ไตรมาส" ซึ่งคํานวณไตรมาสจากคอลัมน์วันที่ เพื่อให้ API จัดกลุ่มแถวตามไตรมาสได้ ค่าที่คำนวณแล้วจะแสดงในคอลัมน์คีย์ในตารางผลลัพธ์ คุณสามารถประกาศฟังก์ชันนี้ในบรรทัดภายในออบเจ็กต์นี้ หรืออาจเป็นฟังก์ชันที่คุณกําหนดไว้ที่อื่นในโค้ด (ต้องอยู่ภายในขอบเขตการเรียกใช้) API มีฟังก์ชันตัวปรับแต่งแบบง่าย 1 ฟังก์ชัน ดูวิธีการสร้างฟังก์ชันที่มีประโยชน์มากขึ้นของคุณเอง คุณต้องทราบประเภทข้อมูลที่ฟังก์ชันนี้ยอมรับได้ และเรียกใช้เฉพาะข้อมูลในคอลัมน์ประเภทดังกล่าวเท่านั้น นอกจากนี้ คุณต้องทราบประเภทการแสดงผลของฟังก์ชันนี้และประกาศในพร็อพเพอร์ตี้ type ตามที่อธิบายไว้ถัดไปด้วย
- type - ประเภทที่ตัวแก้ไขฟังก์ชันแสดงผล ชื่อนี้ควรเป็นชื่อประเภทสตริง JavaScript เช่น "number" หรือ "boolean"
- 
        label - [ไม่บังคับ] ป้ายกำกับสตริงที่จะกำหนดคอลัมน์นี้ใน DataTableที่แสดงผล
- 
        id - [ไม่บังคับ] รหัสสตริงที่จะกำหนดคอลัมน์นี้ใน DataTableที่แสดงผล
 
 เช่น[0],[0,2],[0,{column:1, modifier:myPlusOneFunc, type:'number'},2]
- คอลัมน์
- 
 [ไม่บังคับ] ช่วยให้คุณระบุคอลัมน์นอกเหนือจากคอลัมน์หลักที่จะรวมไว้ในตารางเอาต์พุตได้ เนื่องจากแถวทั้งหมดในกลุ่มแถวได้รับการบีบอัดเป็นแถวเอาต์พุตเดียว คุณจึงต้องกำหนดค่าที่จะแสดงสำหรับกลุ่มแถวนั้น เช่น คุณอาจเลือกแสดงค่าคอลัมน์จากแถวแรกในชุด หรือแสดงค่าเฉลี่ยของแถวทั้งหมดในกลุ่มก็ได้
    columns คืออาร์เรย์ของออบเจ็กต์ที่มีพร็อพเพอร์ตี้ดังต่อไปนี้
    - column - ตัวเลขที่ระบุดัชนีของคอลัมน์ที่จะแสดง
- aggregation - ฟังก์ชันที่ยอมรับอาร์เรย์ของค่าทั้งหมดของคอลัมน์นี้ในกลุ่มแถวนี้ และแสดงผลค่าเดียวที่จะแสดงในแถวผลลัพธ์ ค่าผลลัพธ์ต้องเป็นประเภทที่พร็อพเพอร์ตี้ type ของออบเจ็กต์ระบุไว้ ด้านล่างนี้เป็นรายละเอียดเกี่ยวกับการสร้างฟังก์ชันการรวมข้อมูลของคุณเอง คุณต้องทราบว่าวิธีการนี้ยอมรับข้อมูลประเภทใดและจะเรียกใช้ข้อมูลในคอลัมน์ของประเภทที่เหมาะสมเท่านั้น API มีฟังก์ชันการรวมที่เป็นประโยชน์มากมาย โปรดดูรายการที่หัวข้อฟังก์ชันการรวมที่ระบุด้านล่าง หรือการสร้างฟังก์ชันการรวมเพื่อดูวิธีเขียนฟังก์ชันการรวมของคุณเอง
- type - ประเภทการแสดงผลของฟังก์ชันการรวม ชื่อนี้ควรเป็นชื่อประเภทสตริง JavaScript เช่น "number" หรือ "boolean"
- label - [ไม่บังคับ] ป้ายกำกับสตริงที่จะใช้กับคอลัมน์นี้ในตารางที่แสดงผล
- id - [ไม่บังคับ] รหัสสตริงที่จะใช้กับคอลัมน์นี้ในตารางที่แสดงผล
 
มูลค่าการคืนสินค้า
  DataTable ที่มี 1 คอลัมน์สำหรับแต่ละคอลัมน์ที่ระบุไว้ในคีย์ และ 1 คอลัมน์สำหรับแต่ละคอลัมน์ที่แสดงอยู่ในคอลัมน์ ตารางจะจัดเรียงตามแถวสำคัญจากซ้ายไปขวา
ตัวอย่าง
// This call will group the table by column 0 values.
// It will also show column 3, which will be a sum of
// values in that column for that row group.
var result = google.visualization.data.group(
  dt,
  [0],
  [{'column': 3, 'aggregation': google.visualization.data.sum, 'type': 'number'}]
);
*Input table*
1  'john'  'doe'            10
1  'jane'  'doe'           100
3  'jill'  'jones'          50
3  'jack'  'jones'          75
5  'al'    'weisenheimer'  500
*Output table*
1  110
3  125
5  500
ฟังก์ชันตัวปรับแต่งที่มีให้
API มีฟังก์ชันตัวปรับแต่งต่อไปนี้ซึ่งคุณส่งผ่านไปยังคีย์ได้ modifier เพื่อปรับแต่งลักษณะการจัดกลุ่ม
| การทำงาน | ประเภทอาร์เรย์อินพุต | ประเภทการแสดงผล | คำอธิบาย | 
|---|---|---|---|
| google.visualization.data.month  | วันที่ | ตัวเลข | หากระบุวันที่ ฟังก์ชันนี้จะแสดงค่าเดือนแบบ 0 (0, 1, 2 และอื่นๆ) | 
ฟังก์ชันการรวมข้อมูลที่มีให้
API มีฟังก์ชันการรวมต่อไปนี้ซึ่งคุณส่งผ่านไปยังคอลัมน์ได้ aggregation อาร์เรย์
| การทำงาน | ประเภทอาร์เรย์อินพุต | ประเภทการแสดงผล | คำอธิบาย | 
|---|---|---|---|
| google.visualization.data.avg | ตัวเลข | ตัวเลข | ค่าเฉลี่ยของอาร์เรย์ที่ส่งผ่าน | 
| google.visualization.data.count | ประเภทใดก็ได้ | ตัวเลข | จำนวนแถวในกลุ่ม ระบบจะนับค่า Null และที่ซ้ำกัน | 
| google.visualization.data.max | ตัวเลข, สตริง, วันที่ | number, string, Date, null | ค่าสูงสุดในอาร์เรย์ สำหรับสตริง นี่คือรายการแรกในรายการที่จัดเรียงแบบพจนานุกรม ส่วนค่าวันที่คือวันที่ล่าสุด ระบบจะไม่สนใจค่า Null แสดงผล Null หากไม่มีจำนวนสูงสุด | 
| google.visualization.data.min | ตัวเลข, สตริง, วันที่ | number, string, Date, null | ค่าต่ำสุดในอาร์เรย์ สำหรับสตริง นี่คือรายการสุดท้ายในรายการที่จัดเรียงแบบพจนานุกรม ส่วนค่าวันที่จะเป็นวันที่แรกสุด ระบบจะไม่สนใจค่า Null แสดงผล Null หากไม่มีค่าขั้นต่ำ | 
| google.visualization.data.sum | ตัวเลข | ตัวเลข | ผลรวมของค่าทั้งหมดในอาร์เรย์ | 
การสร้างฟังก์ชันตัวปรับแต่ง
  คุณจะสร้างฟังก์ชันตัวปรับแต่งเพื่อดำเนินการเปลี่ยนรูปแบบค่าคีย์แบบง่ายๆ ก่อนที่ฟังก์ชัน group() จะจัดกลุ่มแถวได้ ฟังก์ชันนี้ใช้ค่าเซลล์เพียงค่าเดียวและดำเนินการกับค่าดังกล่าว (เช่น เพิ่ม 1 ลงในค่า) แล้วแสดงผลค่า ประเภทอินพุตและการส่งกลับไม่จำเป็นต้องเป็นประเภทเดียวกัน แต่ผู้โทรต้องทราบประเภทอินพุตและเอาต์พุต ต่อไปนี้คือตัวอย่างของฟังก์ชันที่ยอมรับวันที่และแสดงผลไตรมาส
// Input type: Date
// Return type: number (1-4)
function getQuarter(someDate) {
  return Math.floor(someDate.getMonth()/3) + 1;
}
การสร้างฟังก์ชันการรวม
คุณสร้างฟังก์ชันการรวมที่ยอมรับชุดของคอลัมน์ในกลุ่มแถวและแสดงผลตัวเลขเดียวได้ เช่น การแสดงผลจำนวนหรือค่าเฉลี่ยของค่า ต่อไปนี้คือการใช้งานฟังก์ชันการรวมจำนวนที่มีให้ ซึ่งจะแสดงผลจำนวนแถวที่อยู่ในกลุ่มแถว
// Input type: Array of any type
// Return type: number
function count(values) {
  return values.length;
}
Join()
  วิธีนี้จะรวมตารางข้อมูล 2 ตาราง (ออบเจ็กต์ DataTable หรือ DataView) เข้าเป็นตารางผลลัพธ์เดียว ซึ่งคล้ายกับคำสั่ง JOIN ของ SQL คุณระบุคู่คอลัมน์อย่างน้อย 1 คู่ (คอลัมน์ key) ระหว่าง 2 ตาราง และตารางเอาต์พุตจะมีแถวตามวิธีการผนวกที่คุณระบุ กล่าวคือ เฉพาะแถวที่คีย์ทั้ง 2 ตรงกันเท่านั้น แถวทั้งหมดจากตารางเดียว หรือทุกแถวจากทั้ง 2 ตาราง ไม่ว่าคีย์จะตรงกันหรือไม่ก็ตาม ตารางผลลัพธ์จะมีเฉพาะคอลัมน์หลักและคอลัมน์เพิ่มเติมที่คุณระบุ โปรดทราบว่า dt2 มีคีย์ซ้ำกันไม่ได้ แต่ dt1 มีไม่ได้ คำว่า "คีย์" หมายถึงชุดค่าผสมของค่าคอลัมน์คีย์ทั้งหมด ไม่ใช่ค่าคอลัมน์ของคีย์ที่เฉพาะเจาะจง ดังนั้นหากแถวมีค่าของเซลล์ A | B | C และคอลัมน์
 0 และ 1 เป็นคอลัมน์คีย์ คีย์สำหรับแถวนั้นจะเป็น AB
ไวยากรณ์
google.visualization.data.join(dt1, dt2, joinMethod,
                                 keys, dt1Columns, dt2Columns);
- dt1
- ป้อนข้อมูล DataTableเพื่อรวม dt2
- dt2
- 
    ป้อนข้อมูล DataTableให้รวมเข้ากับ dt1 ตารางนี้มีคีย์ที่เหมือนกันหลายรายการไม่ได้ (เมื่อคีย์เป็นชุดค่าผสมของค่าคอลัมน์คีย์)
- joinMethod
- 
    สตริงที่ระบุประเภทการผนวก หาก dt1 มีหลายแถวที่ตรงกับแถว dt2 ตารางเอาต์พุตจะรวมแถว dt1 ที่ตรงกันทั้งหมด เลือกจากค่าต่อไปนี้
 - "เต็ม" - ตารางเอาต์พุตจะมีแถวทั้งหมดจากทั้ง 2 ตาราง ไม่ว่าคีย์จะตรงกันหรือไม่ก็ตาม แถวที่ไม่ตรงกันจะมีรายการเซลล์ที่เป็นค่าว่าง โดยแถวที่ตรงกันจะผนวกกัน
- "ภายใน" - จำนวนรวมทั้งหมดที่กรองให้รวมเฉพาะแถวที่ตรงกับคีย์
- "left" - ตารางเอาต์พุตจะรวมแถวทั้งหมดจาก dt1 ไม่ว่าจะมีแถวที่ตรงกันจาก dt2 หรือไม่ก็ตาม
- "right" - ตารางเอาต์พุตจะรวมแถวทั้งหมดจาก dt2 ไม่ว่าจะมีแถวที่ตรงกันจาก dt1 หรือไม่ก็ตาม
 
- คีย์
- 
    อาร์เรย์ของคอลัมน์คีย์ที่จะเปรียบเทียบจากทั้ง 2 ตาราง แต่ละคู่เป็นอาร์เรย์ 2 เอลิเมนต์ อันแรกเป็นคีย์ใน dt1 ส่วนอันที่ 2 เป็นคีย์ใน dt2 อาร์เรย์นี้ระบุคอลัมน์ตามดัชนี รหัส หรือป้ายกำกับได้ โปรดดู getColumnIndex
 คอลัมน์ต้องเป็นประเภทเดียวกันในทั้ง 2 ตาราง คีย์ที่ระบุทั้งหมดต้องตรงกันตามกฎที่กำหนดโดย joinMethod จึงจะรวมแถวจากตารางได้ คอลัมน์คีย์จะรวมอยู่ในตารางเอาต์พุตเสมอ เฉพาะ dt1 ซึ่งเป็นตารางทางซ้ายมือเท่านั้นที่จะมีคีย์ที่ซ้ำกันได้ คีย์ใน dt2 ต้องไม่ซ้ำกัน คำว่า "คีย์" ในที่นี้หมายถึงชุดคอลัมน์คีย์ที่ไม่ซ้ำกัน ไม่ใช่ค่าแต่ละคอลัมน์ เช่น หากคอลัมน์คีย์คือ A และ B ตารางต่อไปนี้จะมีเฉพาะค่าคีย์ที่ไม่ซ้ำกัน (และใช้เป็น dt2 ได้)
 ตัวอย่าง:A B เจน สีแดง เจน สีน้ำเงิน เฟรด สีแดง [[0,0], [2,1]]เปรียบเทียบค่าจากคอลัมน์แรกในทั้ง 2 ตารางกับคอลัมน์ที่ 3 จาก dt1 กับคอลัมน์ที่ 2 จาก dt1
- dt1Columns
- 
 อาร์เรย์ของคอลัมน์จาก dt1 ที่จะรวมไว้ในตารางเอาต์พุต นอกเหนือจากคอลัมน์คีย์ของ dt1 อาร์เรย์นี้ระบุคอลัมน์ตามดัชนี รหัส หรือป้ายกำกับได้ โปรดดู getColumnIndex
- dt2Columns
- 
 อาร์เรย์ของคอลัมน์จาก dt2 ที่จะรวมไว้ในตารางเอาต์พุต นอกเหนือจากคอลัมน์คีย์ของ dt2 อาร์เรย์นี้ระบุคอลัมน์ตามดัชนี รหัส หรือป้ายกำกับได้ โปรดดู getColumnIndex
มูลค่าการคืนสินค้า
  DataTable ที่มีคอลัมน์คีย์ dt1Columns และ dt1Columns ตารางนี้จัดเรียงตามคอลัมน์หลักจากซ้ายไปขวา เมื่อ joinMethod มีค่าเป็น "terior" แล้ว ควรเติมข้อมูลเซลล์คีย์ทั้งหมด สำหรับวิธีการผนวกแบบอื่นๆ หากไม่พบคีย์ที่ตรงกัน ตารางจะมีค่า Null สำหรับเซลล์คีย์ที่ไม่ตรงกัน
ตัวอย่าง
*Tables* dt1 dt2 bob | 111 | red bob | 111 | point bob | 111 | green ellyn | 222 | square bob | 333 | orange jane | 555 | circle fred | 555 | blue jane | 777 | triangle jane | 777 | yellow fred | 666 | dodecahedron * Note that right table has duplicate Jane entries, but the key we will use is * columns 0 and 1. The left table has duplicate key values, but that is * allowed. *Inner join* google.visualization.data.join(dt1, dt2, 'inner', [[0,0],[1,1]], [2], [2]); bob | 111 | red | point bob | 111 | green | point jane | 777 | yellow | triangle * Note that both rows from dt1 are included and matched to * the equivalent dt2 row. *Full join* google.visualization.data.join(dt1, dt2, 'full', [[0,0],[1,1]], [2], [2]); bob | 111 | red | point bob | 111 | green | point bob | 333 | orange | null ellyn | 222 | null | square fred | 555 | blue | null fred | 666 | null | dodecahedron jane | 555 | null | circle jane | 777 | yellow | triangle *Left join* google.visualization.data.join(dt1, dt2, 'left', [[0,0],[1,1]], [2], [2]); bob | 111 | red | point bob | 111 | green | point bob | 333 | orange | null fred | 555 | blue | null jane | 777 | yellow | triangle *Right join* google.visualization.data.join(dt1, dt2, 'right', [[0,0],[1,1]], [2], [2]); bob | 111 | red | point bob | 111 | green | point ellyn | 222 | null | square fred | 666 | null | dodecahedron jane | 555 | null | circle jane | 777 | yellow | triangle
ตัวจัดรูปแบบ
Google Visualization API มีตัวจัดรูปแบบที่สามารถใช้เพื่อจัดรูปแบบข้อมูลในการแสดงภาพอีกครั้งได้ ตัวจัดรูปแบบเหล่านี้จะเปลี่ยนค่าที่จัดรูปแบบของคอลัมน์ที่ระบุในแถวทั้งหมด โปรดทราบว่า
- ตัวจัดรูปแบบจะแก้ไขเฉพาะค่าที่จัดรูปแบบแล้วเท่านั้น ไม่ใช่ค่าที่อยู่เบื้องหลัง เช่น ค่าที่แสดงจะเป็น "฿30,000.00" แต่มูลค่าที่อยู่เบื้องหลังยังคงเป็น "1000"
- ตัวจัดรูปแบบจะมีผลทีละ 1 คอลัมน์เท่านั้น หากต้องการจัดรูปแบบหลายคอลัมน์ใหม่ ให้ใช้ตัวจัดรูปแบบกับแต่ละคอลัมน์ที่ต้องการเปลี่ยนแปลง
- หากคุณใช้ตัวจัดรูปแบบที่ผู้ใช้กำหนดด้วย ตัวจัดรูปแบบของ Google Visualization บางรุ่นจะลบล้างตัวจัดรูปแบบที่ผู้ใช้กำหนดทั้งหมด
- รับออบเจ็กต์ DataTableที่สร้างขึ้น
- สำหรับแต่ละคอลัมน์ที่ต้องการจัดรูปแบบใหม่ ให้ทำดังนี้
    - สร้างออบเจ็กต์ที่ระบุตัวเลือกทั้งหมดสำหรับผู้จัดรูปแบบ นี่คือออบเจ็กต์ JavaScript พื้นฐานที่มีชุดพร็อพเพอร์ตี้และค่า ดูเอกสารประกอบของเครื่องมือจัดรูปแบบเพื่อดูพร็อพเพอร์ตี้ที่รองรับ (หรือคุณจะส่งผ่านออบเจ็กต์รูปแบบสัญกรณ์ออบเจ็กต์ที่ระบุตัวเลือกของคุณก็ได้)
- สร้างตัวจัดรูปแบบโดยการส่งผ่านในออบเจ็กต์ตัวเลือก
- 
        เรียกใช้ formatter.format(table, colIndex)โดยส่งผ่านDataTableและหมายเลขคอลัมน์ (แบบศูนย์) ของข้อมูลที่จะจัดรูปแบบใหม่ โปรดทราบว่าคุณใช้เครื่องมือจัดรูปแบบได้ 1 ตัวกับแต่ละคอลัมน์เท่านั้น การใช้ตัวจัดรูปแบบที่ 2 จะเป็นการเขียนทับเอฟเฟกต์ของคอลัมน์แรก
 สำคัญ: ตัวจัดรูปแบบจำนวนมากต้องใช้แท็ก HTML เพื่อแสดงการจัดรูปแบบพิเศษ หากการแสดงข้อมูลผ่านภาพรองรับตัวเลือกallowHtmlคุณควรตั้งค่าให้เป็นจริง
 
การจัดรูปแบบจริงที่ใช้กับข้อมูลได้มาจากภาษาที่โหลด API ไว้ ดูรายละเอียดเพิ่มเติมได้ที่ การโหลดแผนภูมิที่มีภาษาเฉพาะ
  สำคัญ: ตัวจัดรูปแบบใช้ได้กับ DataTable เท่านั้น โดยจะใช้กับ DataView ไม่ได้ (ออบเจ็กต์ DataView รายการเป็นแบบอ่านอย่างเดียว)
ขั้นตอนทั่วไปในการใช้ตัวจัดรูปแบบมีดังนี้
ตัวอย่างการเปลี่ยนค่าวันที่ที่จัดรูปแบบของคอลัมน์วันที่ให้ใช้รูปแบบวันที่แบบยาว ("1 มกราคม 2009") มีดังนี้
var data = new google.visualization.DataTable();
data.addColumn('string', 'Employee Name');
data.addColumn('date', 'Start Date');
data.addRows(3);
data.setCell(0, 0, 'Mike');
data.setCell(0, 1, new Date(2008, 1, 28));
data.setCell(1, 0, 'Bob');
data.setCell(1, 1, new Date(2007, 5, 1));
data.setCell(2, 0, 'Alice');
data.setCell(2, 1, new Date(2006, 7, 16));
// Create a formatter.
// This example uses object literal notation to define the options.
var formatter = new google.visualization.DateFormat({formatType: 'long'});
// Reformat our data.
formatter.format(data, 1);
// Draw our data
var table = new google.visualization.Table(document.getElementById('dateformat_div'));
table.draw(data, {showRowNumber: true});
ตัวจัดรูปแบบส่วนใหญ่จะแสดง 2 วิธีต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.formatter_name(options) | ตัวสร้าง โดยที่ formatter_name เป็นชื่อ Formatterclass ที่เฉพาะเจาะจง 
 // Object literal technique
var formatter = new google.visualization.DateFormat({formatType: 'long', timeZone: -5});
// Equivalent property setting technique
var options = new Object();
options['formatType'] = 'long';
options['timeZone'] = -5;
var formatter = new google.visualization.DateFormat(options); | 
| format(data, colIndex) | จัดรูปแบบข้อมูลในคอลัมน์ที่ระบุใหม่ 
 | 
Google Visualization API มีตัวจัดรูปแบบต่อไปนี้
| ชื่อตัวจัดรูปแบบ | คำอธิบาย | 
|---|---|
| ArrowFormat | เพิ่มลูกศรขึ้นหรือลงเพื่อบ่งบอกว่าค่าเซลล์อยู่สูงหรือต่ำกว่าค่าที่ระบุ | 
| BarFormat | เพิ่มแถบสี ทิศทางและสีที่ระบุว่าค่าของเซลล์สูงกว่าหรือต่ำกว่าค่าที่ระบุ | 
| ColorFormat | ใส่สีเซลล์โดยพิจารณาว่าค่าอยู่ในช่วงที่ระบุหรือไม่ | 
| DateFormat | จัดรูปแบบค่าวันที่หรือวันที่และเวลาในรูปแบบต่างๆ เช่น "1 มกราคม 2009" "1/1/09" และ "1 ม.ค. 2009" | 
| NumberFormat | จัดรูปแบบค่าตัวเลขในด้านต่างๆ | 
| PatternFormat | เชื่อมค่าเซลล์ในแถวเดียวกันไปยังเซลล์ที่ระบุพร้อมข้อความที่กำหนดเอง | 
ArrowFormat
เพิ่มลูกศรขึ้นหรือลงลงในเซลล์ตัวเลข โดยขึ้นอยู่กับว่าค่าสูงกว่าหรือต่ำกว่าค่าฐานที่ระบุ หากเท่ากับค่าฐาน ระบบจะไม่แสดงลูกศร
ตัวเลือก
ArrowFormat รองรับตัวเลือกต่อไปนี้ซึ่งส่งไปยังเครื่องมือสร้าง
| Option | คำอธิบาย | 
|---|---|
| base | ตัวเลขที่ระบุค่าฐาน ซึ่งใช้เพื่อเปรียบเทียบกับค่าเซลล์ หากค่าของเซลล์สูงกว่า เซลล์จะมีลูกศรขึ้นสีเขียว หากค่าของเซลล์ต่ำกว่า จะมีลูกศรลงสีแดง หากค่าเดียวกันจะไม่มีลูกศร | 
รหัสตัวอย่าง
var data = new google.visualization.DataTable();
data.addColumn('string', 'Department');
data.addColumn('number', 'Revenues Change');
data.addRows([
  ['Shoes', {v:12, f:'12.0%'}],
  ['Sports', {v:-7.3, f:'-7.3%'}],
  ['Toys', {v:0, f:'0%'}],
  ['Electronics', {v:-2.1, f:'-2.1%'}],
  ['Food', {v:22, f:'22.0%'}]
]);
var table = new google.visualization.Table(document.getElementById('arrowformat_div'));
var formatter = new google.visualization.ArrowFormat();
formatter.format(data, 1); // Apply formatter to second column
table.draw(data, {allowHtml: true, showRowNumber: true});
BarFormat
เพิ่มแถบสีลงในเซลล์ตัวเลข ซึ่งระบุว่าค่าของเซลล์นั้นสูงกว่าหรือต่ำกว่าค่าฐานที่ระบุ
ตัวเลือก
BarFormat รองรับตัวเลือกต่อไปนี้ซึ่งส่งไปยังเครื่องมือสร้าง
| Option | ตัวอย่างคำอธิบาย | 
|---|---|
| base | ตัวเลขซึ่งเป็นค่าฐานที่จะใช้เปรียบเทียบค่าเซลล์ หากค่าเซลล์สูงกว่า ค่าจะถูกวาดทางด้านขวาของฐาน หากค่าต่ำกว่า ค่าจะถูกวาดไปทางซ้าย ค่าเริ่มต้นคือ 0 | 
| colorNegative | สตริงที่ระบุส่วนค่าลบของแท่ง ค่าที่เป็นไปได้คือ "แดง" "เขียว" และ "น้ำเงิน" โดยค่าเริ่มต้นคือ "แดง" | 
| colorPositive | สตริงที่ระบุสีของส่วนค่าบวกของแท่ง ค่าที่เป็นไปได้คือ "แดง" "เขียว" และ "น้ำเงิน" ค่าเริ่มต้นคือ "สีน้ำเงิน" | 
| drawZeroLine | บูลีนที่ระบุว่าจะวาดเส้นฐานสีเข้มขนาด 1 พิกเซลหรือไม่เมื่อมีค่าลบ แถบสีเข้มจะช่วยเพิ่มประสิทธิภาพการสแกนแถบสีด้วยภาพ ค่าเริ่มต้นคือ "false" | 
| max | ค่าจำนวนสูงสุดของช่วงแท่ง ค่าเริ่มต้นคือค่าสูงสุดในตาราง | 
| min | ค่าจำนวนต่ำสุดของช่วงแท่ง ค่าเริ่มต้นคือค่าต่ำสุดในตาราง | 
| showValue | หากเป็น "จริง" จะแสดงค่าและแถบ หากเป็น "เท็จ" จะแสดงเฉพาะแถบ ค่าเริ่มต้นคือ True | 
| width | ความหนาของแต่ละแท่งในหน่วยพิกเซล ค่าเริ่มต้นคือ 100 | 
รหัสตัวอย่าง
var data = new google.visualization.DataTable();
data.addColumn('string', 'Department');
data.addColumn('number', 'Revenues');
data.addRows([
  ['Shoes', 10700],
  ['Sports', -15400],
  ['Toys', 12500],
  ['Electronics', -2100],
  ['Food', 22600],
  ['Art', 1100]
]);
var table = new google.visualization.Table(document.getElementById('barformat_div'));
var formatter = new google.visualization.BarFormat({width: 120});
formatter.format(data, 1); // Apply formatter to second column
table.draw(data, {allowHtml: true, showRowNumber: true, width: '100%', height: '100%'});
ColorFormat
  กำหนดสีให้กับพื้นหน้าหรือพื้นหลังของเซลล์ตัวเลขโดยขึ้นอยู่กับค่าของเซลล์  ตัวจัดรูปแบบนี้ผิดปกติเนื่องจากไม่มีตัวเลือกในตัวสร้าง คุณควรเรียกใช้ addRange() หรือ addGradientRange() กี่ครั้งก็ได้เพื่อเพิ่มช่วงสีก่อนที่จะเรียกใช้ format() ระบุสีในรูปแบบ HTML ที่ยอมรับในรูปแบบใดก็ได้ เช่น "สีดำ", "#000000" หรือ "#000"
วิธีการ
ColorFormat รองรับเมธอดต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.ColorFormat() | เครื่องมือสร้าง ไม่รับอาร์กิวเมนต์ | 
| addRange(from, to, color, bgcolor) | ระบุสีพื้นหน้าและ/หรือสีพื้นหลังของเซลล์โดยขึ้นอยู่กับค่าของเซลล์ เซลล์ที่มีค่าในช่วง from ที่ระบุเป็น to ที่กำหนดจะได้รับการกำหนดเป็น color และ bgcolor สิ่งสำคัญที่ควรทราบคือช่วงดังกล่าวเป็นค่าที่ไม่รวม เนื่องจากการสร้างช่วงจาก 1—1,000 และช่วงวินาทีจาก 1,000 โดยที่ 2,000 จะไม่ครอบคลุมค่า 1,000 
 | 
| addGradientRange(from, to, color, fromBgColor,
        toBgColor) | 
        กำหนดสีพื้นหลังจากช่วงตามค่าเซลล์ ระบบจะปรับขนาดสีให้ตรงกับค่าของเซลล์ภายในช่วง ตั้งแต่สีขอบเขตล่างไปจนถึงสีขอบเขตบน โปรดทราบว่าวิธีนี้จะเปรียบเทียบค่าสตริงไม่ได้ เนื่องจาก  
 
 | 
| format(dataTable, columnIndex) | เมธอด format()มาตรฐานเพื่อใช้การจัดรูปแบบกับคอลัมน์ที่ระบุ | 
รหัสตัวอย่าง
var data = new google.visualization.DataTable();
data.addColumn('string', 'Department');
data.addColumn('number', 'Revenues');
data.addRows([
  ['Shoes', 10700],
  ['Sports', -15400],
  ['Toys', 12500],
  ['Electronics', -2100],
  ['Food', 22600],
  ['Art', 1100]
]);
var table = new google.visualization.Table(document.getElementById('colorformat_div'));
var formatter = new google.visualization.ColorFormat();
formatter.addRange(-20000, 0, 'white', 'orange');
formatter.addRange(20000, null, 'red', '#33ff33');
formatter.format(data, 1); // Apply formatter to second column
table.draw(data, {allowHtml: true, showRowNumber: true, width: '100%', height: '100%'});
DateFormat
  จัดรูปแบบค่า Date ของ JavaScript ได้หลายวิธี เช่น "1 มกราคม 2016" "1/1/16" และ "1 ม.ค. 2016"
ตัวเลือก
DateFormat รองรับตัวเลือกต่อไปนี้ซึ่งส่งไปยังเครื่องมือสร้าง
| Option | คำอธิบาย | 
|---|---|
| formatType | ตัวเลือกการจัดรูปแบบด่วนสำหรับวันที่ ระบบรองรับค่าสตริงต่อไปนี้ ซึ่งจะจัดรูปแบบวันที่ 28 กุมภาพันธ์ 2016 ใหม่ตามที่แสดงไว้ 
 คุณไม่สามารถระบุทั้ง  | 
| pattern | 
        รูปแบบของรูปแบบที่กำหนดเองที่จะใช้กับค่า ซึ่งคล้ายกับรูปแบบวันที่และเวลาของ ICU
        เช่น  
        คุณไม่สามารถระบุทั้ง  | 
| timeZone | เขตเวลาที่แสดงค่าวันที่ นี่คือค่าตัวเลขซึ่งระบุ GMT + จำนวนเขตเวลานี้ (อาจเป็นลบได้) ออบเจ็กต์วันที่สร้างขึ้นโดยค่าเริ่มต้นด้วยเขตเวลาที่สมมติขึ้นในคอมพิวเตอร์ที่สร้างออบเจ็กต์วันที่ ตัวเลือกนี้ใช้เพื่อแสดงค่าดังกล่าวในเขตเวลาอื่น เช่น หากคุณสร้างออบเจ็กต์วันที่เป็น 17.00 น. บนคอมพิวเตอร์ที่อยู่ในกรีนิช อังกฤษ และระบุเขตเวลาเป็น -5 ( options['timeZone'] = -5หรือเวลาแปซิฟิกตะวันออกในสหรัฐอเมริกา) ค่าที่แสดงจะเป็น 12 เที่ยงตรง | 
วิธีการ
DateFormat รองรับเมธอดต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.DateFormat(options) | เครื่องมือสร้าง ดูข้อมูลเพิ่มเติมได้ในส่วนตัวเลือกด้านบน | 
| format(dataTable, columnIndex) | เมธอด format()มาตรฐานเพื่อใช้การจัดรูปแบบกับคอลัมน์ที่ระบุ | 
| formatValue(value) | แสดงผลค่าที่จัดรูปแบบของค่าที่ระบุ
         วิธีนี้ไม่ต้องใช้  | 
รหัสตัวอย่าง
function drawDateFormatTable() {
  var data = new google.visualization.DataTable();
  data.addColumn('string', 'Employee Name');
  data.addColumn('date', 'Start Date (Long)');
  data.addColumn('date', 'Start Date (Medium)');
  data.addColumn('date', 'Start Date (Short)');
  data.addRows([
    ['Mike', new Date(2008, 1, 28, 0, 31, 26),
             new Date(2008, 1, 28, 0, 31, 26),
             new Date(2008, 1, 28, 0, 31, 26)],
    ['Bob', new Date(2007, 5, 1, 0),
            new Date(2007, 5, 1, 0),
            new Date(2007, 5, 1, 0)],
    ['Alice', new Date(2006, 7, 16),
              new Date(2006, 7, 16),
              new Date(2006, 7, 16)]
  ]);
  // Create three formatters in three styles.
  var formatter_long = new google.visualization.DateFormat({formatType: 'long'});
  var formatter_medium = new google.visualization.DateFormat({formatType: 'medium'});
  var formatter_short = new google.visualization.DateFormat({formatType: 'short'});
  // Reformat our data.
  formatter_long.format(data, 1);
  formatter_medium.format(data,2);
  formatter_short.format(data, 3);
  // Draw our data
  var table = new google.visualization.Table(document.getElementById('dateformat_div'));
  table.draw(data, {showRowNumber: true, width: '100%', height: '100%'});
}
ข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบวันที่
รายละเอียดเพิ่มเติมเกี่ยวกับรูปแบบที่รองรับมีดังนี้
  รูปแบบนี้จะคล้ายกับรูปแบบวันที่และเวลาของ ICU แต่ยังไม่รองรับรูปแบบต่อไปนี้ A D F g Y u w W ข้อความตามตัวอักษรที่ต้องการให้ปรากฏในเอาต์พุตควรล้อมรอบด้วยเครื่องหมายคำพูดเดี่ยว ยกเว้นเครื่องหมายคำพูดเดี่ยวที่ควรเพิ่มเป็น 2 เท่า ทั้งนี้เพื่อหลีกเลี่ยงการขัดแย้งกันของรูปแบบ
  "K 'o''clock.'".
| รูปแบบ | คำอธิบาย | ตัวอย่างเอาต์พุต | 
|---|---|---|
| GG | ผู้กำหนดยุค | "โฆษณา" | 
| yy หรือ yyyy | ปี | 1996 | 
| M | เดือนในรอบปี สำหรับเดือนมกราคม 
 | "กรกฎาคม" "07" | 
| d | วันในเดือน ค่า "d" ที่เกินมาจะเพิ่มเลข 0 นำหน้า | 10 | 
| h | ชั่วโมงในรูปแบบ 12 ชั่วโมง ค่า "h" ที่เกินมาจะบวกเลข 0 ที่นำหน้า | 12 | 
| ฮิต | ชั่วโมงในรูปแบบ 24 ชั่วโมง ค่า Hk ที่เกินมาจะบวกเลข 0 นำหน้า | 0 | 
| m | นาทีเป็นชั่วโมง ค่า "M" ที่เกินมาจะเพิ่มเลข 0 นำหน้า | 30 | 
| วินาที | วินาทีในนาที ค่า "s" ที่เกินมาจะเพิ่มเลข 0 นำหน้า | 55 | 
| S | เศษส่วนที่สอง จะมีการเพิ่มค่า "S" ที่เกินมาทางด้านขวาด้วยเลขศูนย์ | 978 | 
| E | วันของสัปดาห์ เอาต์พุตต่อไปนี้สำหรับ "วันอังคาร" 
 | "อ." "วันอังคาร" | 
| aa | AM/PM | "PM" | 
| k | ชั่วโมงใน 1 วัน (1~24) ค่า "k" ที่เกินมาจะบวกเลข 0 ที่นำหน้า | 24 | 
| K | ชั่วโมงใน AM/PM (0~11) ค่า "k" ที่เกินมาจะบวกเลข 0 ที่นำหน้า | 0 | 
| z | เขตเวลา สำหรับเขตเวลา 5 ให้แสดงผล "UTC+5" | "UTC+5" | 
| Z | เขตเวลาในรูปแบบ RFC 822 สำหรับเขตเวลา -5: Z, ZZ, ZZZ ผลิต -0500 ZZZZ และผลิตผลอื่นๆ "GMT -05:00" | "-0800" "GMT -05:00" | 
| v | เขตเวลา (ทั่วไป) | "อื่นๆ/GMT-5" | 
| ' | Escape สำหรับข้อความ | 'วันที่=' | 
| '' | เครื่องหมายคำพูดเดี่ยว | ป่ะ | 
NumberFormat
อธิบายวิธีจัดรูปแบบคอลัมน์ตัวเลข ตัวเลือกการจัดรูปแบบ ได้แก่ การระบุคำนำหน้า (เช่น เครื่องหมายดอลลาร์) หรือเครื่องหมายวรรคตอนเพื่อใช้เป็นเครื่องหมายหลายพันตัว
ตัวเลือก
NumberFormat รองรับตัวเลือกต่อไปนี้ซึ่งส่งไปยังเครื่องมือสร้าง
| Option | คำอธิบาย | 
|---|---|
| decimalSymbol | อักขระที่จะใช้เป็นเครื่องหมายทศนิยม ค่าเริ่มต้นคือจุด (.) | 
| fractionDigits | ตัวเลขที่ระบุจำนวนหลักที่จะแสดงหลังจุดทศนิยม ค่าเริ่มต้นคือ 2 หากระบุตัวเลขมากกว่าจำนวนที่มีอยู่ ระบบจะแสดงเลขศูนย์สำหรับค่าที่น้อยกว่า ค่าที่ถูกตัดจะปัดเศษ (5 ปัดเศษขึ้น) | 
| groupingSymbol | อักขระที่จะใช้เพื่อจัดกลุ่มตัวเลขทางด้านซ้ายของทศนิยมเป็นชุดที่มี 3 ตัว ค่าเริ่มต้นคือคอมมา (,) | 
| negativeColor | สีข้อความสำหรับค่าลบ ไม่มีค่าเริ่มต้น ค่าอาจเป็นค่าสี HTML ที่ยอมรับได้ เช่น "แดง" หรือ "#FF0000" | 
| negativeParens | บูลีนที่ "จริง" บ่งชี้ว่าควรใส่ค่าลบไว้ในวงเล็บ ค่าเริ่มต้นเป็น True | 
| pattern | 
        สตริงรูปแบบ หากระบุ ระบบจะละเว้นตัวเลือกอื่นๆ ทั้งหมด ยกเว้น  
        สตริงรูปแบบเป็นส่วนหนึ่งของ
          ชุดรูปแบบ ICU
        
        เช่น  | 
| prefix | คำนำหน้าสตริงของค่า เช่น "$" | 
| suffix | คำต่อท้ายสตริงสำหรับค่า เช่น "%" | 
วิธีการ
NumberFormat รองรับเมธอดต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.NumberFormat(options) | เครื่องมือสร้าง ดูข้อมูลเพิ่มเติมได้ในส่วนตัวเลือกด้านบน | 
| format(dataTable, columnIndex) | เมธอด format()มาตรฐานเพื่อใช้การจัดรูปแบบกับคอลัมน์ที่ระบุ | 
| formatValue(value) | 
        แสดงผลค่าที่จัดรูปแบบของค่าที่ระบุ วิธีนี้ไม่ต้องใช้  | 
รหัสตัวอย่าง
var data = new google.visualization.DataTable();
data.addColumn('string', 'Department');
data.addColumn('number', 'Revenues');
data.addRows([
  ['Shoes', 10700],
  ['Sports', -15400],
  ['Toys', 12500],
  ['Electronics', -2100],
  ['Food', 22600],
  ['Art', 1100]
]);
var table = new google.visualization.Table(document.getElementById('numberformat_div'));
var formatter = new google.visualization.NumberFormat(
    {prefix: '$', negativeColor: 'red', negativeParens: true});
formatter.format(data, 1); // Apply formatter to second column
table.draw(data, {allowHtml: true, showRowNumber: true, width: '100%', height: '100%'});
PatternFormat
  ช่วยให้คุณผสานค่าของคอลัมน์ที่กำหนดเป็นคอลัมน์เดียวพร้อมข้อความที่กำหนดเอง ดังนั้น ตัวอย่างเช่น หากคุณมีคอลัมน์สำหรับชื่อจริงและคอลัมน์สำหรับนามสกุล คุณอาจป้อนข้อมูลในคอลัมน์ที่ 3 ด้วย {last name} ซึ่งก็คือ {first name} ตัวจัดรูปแบบนี้ไม่เป็นไปตามรูปแบบสำหรับตัวสร้างและเมธอด format() โปรดดูคำแนะนำที่ส่วนวิธีการด้านล่าง
วิธีการ
PatternFormat รองรับเมธอดต่อไปนี้
| วิธีการ | คำอธิบาย | 
|---|---|
| google.visualization.PatternFormat(pattern) | 
        เครื่องมือสร้าง ไม่รับออบเจ็กต์ตัวเลือก แต่จะใช้พารามิเตอร์ pattern ของสตริงแทน นี่คือสตริงที่อธิบายค่าของคอลัมน์ที่จะใส่ลงในคอลัมน์ปลายทาง พร้อมกับข้อความที่กำหนดเอง ฝังตัวยึดตำแหน่งในสตริงเพื่อระบุค่าจากคอลัมน์อื่นที่ต้องการฝัง ตัวยึดตำแหน่งคือ  
 รหัสตัวอย่างตัวอย่างต่อไปนี้แสดงเครื่องมือสร้างสำหรับรูปแบบที่สร้างองค์ประกอบ Anchor โดยนำองค์ประกอบที่ 1 และ 2 มาจากเมธอด  var formatter = new google.visualization.PatternFormat(
  '<a href="mailto:{1}">{0}</a>'); | 
| 
        format(dataTable, srcColumnIndices,
        opt_dstColumnIndex)
       | การเรียกการจัดรูปแบบมาตรฐานที่มีพารามิเตอร์เพิ่มเติมเล็กน้อย ได้แก่ 
 ดูตัวอย่างการจัดรูปแบบหลังตาราง | 
ต่อไปนี้คือตัวอย่างบางส่วนของอินพุตและเอาต์พุตสำหรับตาราง 4 คอลัมน์
Row before formatting (4 columns, last is blank):
John  |  Paul  |  Jones  |  [empty]
var formatter = new google.visualization.PatternFormat("{0} {1} {2}");
formatter.format(data, [0,1,2], 3);
Output:
  John  |  Paul  |  Jones  |  John Paul Jones
var formatter = new google.visualization.PatternFormat("{1}, {0}");
formatter.format(data, [0,2], 3);
Output:
  John  |  Paul  |  Jones  |  Jones, John
รหัสตัวอย่าง
ตัวอย่างต่อไปนี้แสดงวิธีรวมข้อมูลจาก 2 คอลัมน์เพื่อสร้างอีเมล โดยใช้ออบเจ็กต์ DataView เพื่อซ่อนคอลัมน์แหล่งที่มาเดิม ดังนี้
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Email');
data.addRows([
  ['John Lennon', 'john@beatles.co.uk'],
  ['Paul McCartney', 'paul@beatles.co.uk'],
  ['George Harrison', 'george@beatles.co.uk'],
  ['Ringo Starr', 'ringo@beatles.co.uk']
]);
var table = new google.visualization.Table(document.getElementById('patternformat_div'));
var formatter = new google.visualization.PatternFormat(
    '<a href="mailto:{1}">{0}</a>');
// Apply formatter and set the formatted value of the first column.
formatter.format(data, [0, 1]);
var view = new google.visualization.DataView(data);
view.setColumns([0]); // Create a view with the first column only.
table.draw(view, {allowHtml: true, showRowNumber: true, width: '100%', height: '100%'});
GadgetHelper
ชั้นเรียนผู้ช่วยที่ลดความซับซ้อนในการเขียนแกดเจ็ตที่ใช้ Google Visualization API
ผู้ผลิต
google.visualization.GadgetHelper()
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| createQueryFromPrefs(prefs) | google.visualization.Query | คงที่ สร้างอินสแตนซ์ใหม่ของ google.visualization.Queryและตั้งค่าพร็อพเพอร์ตี้ตามค่าจากค่ากำหนดของแกดเจ็ต ประเภทของพารามิเตอร์prefsคือ _IG_Prefs
 | 
| validateResponse(response) | บูลีน | คงที่ พารามิเตอร์ responseเป็นประเภท google.visualization.QueryResponse แสดงผลtrueหากการตอบกลับมีข้อมูล แสดงผลfalseหากการดำเนินการค้นหาล้มเหลวและการตอบกลับไม่มีข้อมูล หากเกิดข้อผิดพลาด วิธีนี้จะแสดงข้อความแสดงข้อผิดพลาด | 
คลาสการค้นหา
ออบเจ็กต์ต่อไปนี้พร้อมสำหรับการส่งการค้นหาข้อมูลไปยังแหล่งข้อมูลภายนอก เช่น Google สเปรดชีต
- การค้นหา - รวมคำขอข้อมูลขาออก
- QueryResponse - จัดการการตอบสนองจากแหล่งข้อมูล
คำค้นหา
หมายถึงการค้นหาที่ส่งไปยังแหล่งข้อมูล
ผู้ผลิต
google.visualization.Query(dataSourceUrl, opt_options)
พารามิเตอร์
- dataSourceUrl
- [จําเป็น, สตริง] URL ที่จะส่งคําค้นหา โปรดดูเอกสารประกอบเกี่ยวกับแผนภูมิและสเปรดชีตสำหรับ Google สเปรดชีต
- opt_options
- 
    [ไม่บังคับ ออบเจ็กต์] แมปของตัวเลือกสำหรับคำขอ หมายเหตุ:  หากคุณเข้าถึง
      แหล่งข้อมูลที่ถูกจำกัด
     คุณไม่ควรใช้พารามิเตอร์นี้ พร็อพเพอร์ตี้ที่รองรับมีดังนี้
    - 
        sendMethod - [ไม่บังคับ, สตริง] ระบุวิธีที่จะใช้ส่งการค้นหา เลือกค่าสตริงค่าใดค่าหนึ่งต่อไปนี้
        - 'xhr' - ส่งคำค้นหาโดยใช้ XmlHttpRequest
- 'scriptInjection" - ส่งคำค้นหาโดยใช้การแทรกสคริปต์
- 
            'makeRequest' - [ใช้ได้กับแกดเจ็ตเท่านั้น ซึ่งเลิกใช้งานแล้ว] ส่งคำค้นหาโดยใช้เมธอด API ของแกดเจ็ต 
 makeRequest()หากระบุ คุณควรระบุ makeRequestParams ด้วย
- 
            'auto' - ใช้วิธีการที่ระบุโดยพารามิเตอร์ URL tqrtจาก URL แหล่งข้อมูลtqrtสามารถมีค่าต่อไปนี้: 'xhr', 'scriptInjection' หรือ 'makeRequest' หากไม่มีtqrtหรือมีค่าที่ไม่ถูกต้อง ค่าเริ่มต้นคือ "xhr" สำหรับคำขอในโดเมนเดียวกัน และ "scriptInjection" สำหรับคำขอข้ามโดเมน
 
- 
        makeRequestParams - [Object] แมปของพารามิเตอร์สำหรับการค้นหา makeRequest()ใช้และจำเป็นเฉพาะในกรณีที่ sendMethod เป็น "makeRequest" เท่านั้น
 
- 
        sendMethod - [ไม่บังคับ, สตริง] ระบุวิธีที่จะใช้ส่งการค้นหา เลือกค่าสตริงค่าใดค่าหนึ่งต่อไปนี้
        
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| abort() | ไม่มี | หยุดการส่งการค้นหาอัตโนมัติที่เริ่มต้นด้วย setRefreshInterval() | 
| setRefreshInterval(seconds) | ไม่มี | 
        ตั้งค่าการค้นหาให้เรียกใช้เมธอด  หากใช้วิธีนี้ คุณควรเรียกใช้ก่อนเรียกใช้เมธอด  
        ยกเลิกวิธีการนี้โดยการโทรอีกครั้งโดยใช้ศูนย์ (ค่าเริ่มต้น) หรือโดยการเรียกใช้
         | 
| setTimeout(seconds) | ไม่มี | กำหนดจำนวนวินาทีที่จะรอให้แหล่งข้อมูลตอบสนองก่อนเพิ่มข้อผิดพลาดการหมดเวลา secondsเป็นจำนวนที่มากกว่า 0ระยะหมดเวลาเริ่มต้นคือ 30 วินาที หากใช้วิธีนี้ ควรเรียกใช้เมธอดก่อนเรียกใช้เมธอด send | 
| setQuery(string) | ไม่มี | ตั้งค่าสตริงการค้นหา ค่าของพารามิเตอร์ stringควรเป็นการค้นหาที่ถูกต้องหากใช้วิธีนี้ ควรเรียกใช้เมธอดก่อนเรียกใช้เมธอด sendดูข้อมูลเพิ่มเติมเกี่ยวกับภาษาในการค้นหา | 
| send(callback) | ไม่มี | ส่งคำถามไปยังแหล่งข้อมูล callbackควรเป็นฟังก์ชันที่ระบบจะเรียกใช้เมื่อแหล่งข้อมูลตอบสนอง ฟังก์ชัน Callback จะได้รับพารามิเตอร์เดี่ยวประเภท google.visualization.QueryResponse | 
QueryResponse
แสดงการตอบกลับของการดำเนินการค้นหาที่ได้รับจากแหล่งข้อมูล ระบบจะส่งอินสแตนซ์ของคลาสนี้เป็นอาร์กิวเมนต์ไปยังฟังก์ชัน Callback ที่ตั้งค่าไว้เมื่อมีการเรียกใช้ Query.send
วิธีการ
| วิธีการ | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| getDataTable() | DataTable | แสดงผลตารางข้อมูลตามที่แหล่งข้อมูลแสดงผล แสดงผล nullหากการดำเนินการค้นหาล้มเหลวและไม่มีการแสดงผลข้อมูล | 
| getDetailedMessage() | สตริง | แสดงผลข้อความแสดงข้อผิดพลาดโดยละเอียดสำหรับการค้นหาที่ล้มเหลว หากการดำเนินการค้นหาสำเร็จ วิธีนี้จะแสดงผลสตริงว่าง ข้อความที่ส่งคืนเป็นข้อความ ที่มีไว้สำหรับนักพัฒนาซอฟต์แวร์และอาจมีข้อมูลทางเทคนิค เช่น "ไม่มีคอลัมน์ {salary}" | 
| getMessage() | สตริง | แสดงผลข้อความแสดงข้อผิดพลาดสั้นๆ สำหรับการค้นหาที่ล้มเหลว หากการดำเนินการค้นหาสำเร็จ วิธีนี้จะแสดงผลสตริงว่าง ข้อความที่ส่งคืนเป็นข้อความสั้นๆ ที่มีไว้สำหรับผู้ใช้ปลายทาง เช่น "คำค้นหาไม่ถูกต้อง" หรือ "การเข้าถึงถูกปฏิเสธ" | 
| getReasons() | อาร์เรย์ของสตริง | แสดงผลอาร์เรย์ของจำนวนรายการเพิ่มเติมที่เป็นศูนย์ แต่ละรายการคือสตริงสั้นๆ ที่มีรหัสข้อผิดพลาดหรือคําเตือนที่เกิดขึ้นขณะดําเนินการค้นหา รหัสที่เป็นไปได้มีดังนี้ 
 | 
| hasWarning() | บูลีน | แสดงผล trueหากการดำเนินการค้นหามีข้อความเตือน | 
| isError() | บูลีน | แสดงผล trueหากดำเนินการค้นหาไม่สำเร็จ และการตอบกลับไม่มีตารางข้อมูล แสดงผล <false> หากการดำเนินการค้นหาสำเร็จและการตอบกลับมีตารางข้อมูล | 
การแสดงข้อผิดพลาด
  API มีฟังก์ชันมากมายที่จะช่วยคุณแสดงข้อความแสดงข้อผิดพลาดที่กำหนดเองให้กับผู้ใช้ หากต้องการใช้ฟังก์ชันเหล่านี้ ให้ระบุเอลิเมนต์ของคอนเทนเนอร์ในหน้าเว็บ (โดยทั่วไปคือ <div>) ซึ่ง API จะดึงข้อความแสดงข้อผิดพลาดที่มีการจัดรูปแบบ คอนเทนเนอร์นี้อาจเป็นองค์ประกอบคอนเทนเนอร์การแสดงภาพ หรือคอนเทนเนอร์ที่แสดงข้อผิดพลาดเท่านั้น หากคุณระบุองค์ประกอบที่มีการแสดงข้อมูลผ่านภาพ ข้อความแสดงข้อผิดพลาดจะแสดงเหนือการแสดงภาพ
  จากนั้นเรียกใช้ฟังก์ชันที่เหมาะสมด้านล่างเพื่อแสดงหรือนำออกข้อความแสดงข้อผิดพลาด
ฟังก์ชันทั้งหมดเป็นฟังก์ชันแบบคงที่ในเนมสเปซ google.visualization.errors
การแสดงภาพจํานวนมากอาจทำให้เกิดเหตุการณ์ข้อผิดพลาดได้ โปรดดูเหตุการณ์ข้อผิดพลาดด้านล่างเพื่อดูข้อมูลเพิ่มเติม
คุณดูตัวอย่างข้อผิดพลาดที่กำหนดเองได้ในตัวอย่าง Wrapper การค้นหา
| การทำงาน | ผลลัพธ์ | คำอธิบาย | 
|---|---|---|
| addError(container, message, opt_detailedMessage,
        opt_options) | ค่ารหัสสตริงที่ระบุออบเจ็กต์ข้อผิดพลาดที่สร้างขึ้น ค่านี้คือค่าที่ไม่ซ้ำกันในหน้านั้นๆ และจะใช้เพื่อนำข้อผิดพลาดออกหรือค้นหาองค์ประกอบที่มีข้อผิดพลาดนั้นได้ | เพิ่มบล็อกการแสดงข้อผิดพลาดในองค์ประกอบของหน้าที่ระบุ โดยมีข้อความและการจัดรูปแบบที่ระบุ 
 | 
| addErrorFromQueryResponse(container, response) | ค่ารหัสสตริงที่ระบุออบเจ็กต์ข้อผิดพลาดที่สร้างขึ้น หรือค่า Null หากการตอบกลับไม่ได้ระบุข้อผิดพลาด ค่านี้คือค่าที่ไม่ซ้ำกันในหน้านั้นๆ และจะใช้เพื่อนำข้อผิดพลาดออกหรือค้นหาองค์ประกอบที่มีข้อผิดพลาดนั้นได้ | 
        ส่งการตอบกลับการค้นหาและที่เก็บข้อความแสดงข้อผิดพลาดไปยังเมธอดนี้: หากการตอบกลับการค้นหา
        ระบุถึงข้อผิดพลาดของการค้นหา จะแสดงข้อความแสดงข้อผิดพลาดในองค์ประกอบของหน้าที่ระบุ หากการตอบกลับคำค้นหาเป็นค่าว่าง เมธอดจะแสดงข้อผิดพลาด JavaScript ส่ง QueryResponse ที่ได้รับในเครื่องจัดการการค้นหาไปยังข้อความนี้เพื่อแสดงข้อผิดพลาด นอกจากนี้ยังจะกำหนดรูปแบบของการแสดงผลที่เหมาะสมกับประเภท (ข้อผิดพลาดหรือคำเตือน คล้ายกับ  
 | 
| removeError(id)  | บูลีน: true หากนำข้อผิดพลาดออก หรือเป็น false หากไม่เป็นเช่นนั้น | นำข้อผิดพลาดที่ระบุตามรหัสออกจากหน้า 
 | 
| removeAll(container)  | ไม่มี | นำบล็อกข้อผิดพลาดทั้งหมดออกจากคอนเทนเนอร์ที่ระบุ หากไม่มีคอนเทนเนอร์ที่ระบุ ระบบจะแสดงข้อผิดพลาด 
 | 
| getContainer(errorId)  | จัดการองค์ประกอบ DOM ที่มีข้อผิดพลาดที่ระบุ หรือ Null หากไม่พบ | เรียกข้อมูลแฮนเดิลไปยังองค์ประกอบคอนเทนเนอร์ที่มีข้อผิดพลาดที่ระบุโดย errorID 
 | 
กิจกรรม
การแสดงภาพเหตุการณ์ส่วนใหญ่เริ่มทำงานเพื่อระบุว่าเกิดเหตุการณ์บางอย่างขึ้น ในฐานะผู้ใช้แผนภูมิ คุณมักจะต้องการฟังเหตุการณ์เหล่านี้ หากเขียนโค้ดการแสดงภาพของตัวเอง คุณก็อาจต้องการทริกเกอร์เหตุการณ์ดังกล่าวด้วยตัวเองด้วย
วิธีการต่อไปนี้ช่วยให้นักพัฒนาซอฟต์แวร์ฟังเหตุการณ์ นำเครื่องจัดการเหตุการณ์ที่มีอยู่ออก หรือทริกเกอร์เหตุการณ์จากภายในการแสดงภาพได้
- google.visualization.events.addListener() และ google.visualization.events.addOneTimeListener() จะฟังเหตุการณ์
- google.visualization.events.removeListener() นำ Listener ที่มีอยู่ออก
- google.visualization.events.removeAllListeners() นำ Listener ทั้งหมดของแผนภูมิที่เฉพาะเจาะจงออก
- google.visualization.events.trigger() ทำให้เหตุการณ์เริ่มทำงาน
addListener()
เรียกใช้เมธอดนี้เพื่อลงทะเบียนเพื่อรับเหตุการณ์เริ่มทำงานโดยการแสดงภาพที่โฮสต์ในหน้าเว็บของคุณ คุณควรบันทึกอาร์กิวเมนต์เหตุการณ์ (หากมี) ที่จะส่งไปยังฟังก์ชันการจัดการ
google.visualization.events.addListener(source_visualization, event_name, handling_function)
- source_visualization
- แฮนเดิลของอินสแตนซ์การแสดงภาพต้นฉบับ
- event_name
- ชื่อสตริงของเหตุการณ์ที่จะฟัง การแสดงภาพควรบันทึกว่ามีเหตุการณ์ใดเกิดขึ้นบ้าง
- handling_function
- ชื่อของฟังก์ชัน JavaScript ในเครื่องที่จะเรียกใช้เมื่อ source_visualization ทำให้เหตุการณ์ event_name เริ่มทำงาน ฟังก์ชันการจัดการจะส่งอาร์กิวเมนต์เหตุการณ์ทั้งหมดเป็นพารามิเตอร์
การคืนสินค้า
เครื่องจัดการ Listener สำหรับผู้ฟังใหม่ หากจำเป็น เครื่องจัดการสามารถใช้เพื่อนำ Listener นี้ออกในภายหลังได้โดยเรียกใช้ google.visualization.events.removeListener()
ตัวอย่าง
ตัวอย่างการลงทะเบียนเข้าร่วมงานที่เราเข้าร่วมมีดังนี้
var table = new google.visualization.Table(document.getElementById('table_div'));
table.draw(data, options);
google.visualization.events.addListener(table, 'select', selectHandler);
function selectHandler() {
  alert('A table row was selected');
}
addOneTimeListener()
  ตัวเลือกนี้เหมือนกับ addListener() แต่มีไว้สำหรับเหตุการณ์ที่ควรฟังเพียงครั้งเดียว การส่งเหตุการณ์ครั้งต่อๆ ไปจะไม่เรียกใช้ฟังก์ชันการจัดการ
  ตัวอย่างเมื่อฟีเจอร์นี้มีประโยชน์ คือ การเสมอทุกครั้งจะทำให้มีการส่งเหตุการณ์ ready หากต้องการให้เฉพาะ ready รายการแรกเรียกใช้โค้ด คุณจะต้องใช้ addOneTimeListener แทนที่จะเป็น addListener
removeListener()
เรียกใช้เมธอดนี้เพื่อยกเลิกการลงทะเบียน Listener เหตุการณ์ที่มีอยู่
google.visualization.events.removeListener(listener_handler)
- listener_handler
- เครื่องจัดการ Listener ที่จะนำออก ตามที่ google.visualization.events.addListener() แสดงผล
removeAllListeners()
เรียกใช้เมธอดนี้เพื่อยกเลิกการลงทะเบียน Listener เหตุการณ์ทั้งหมดของอินสแตนซ์การแสดงภาพที่ระบุ
google.visualization.events.removeAllListeners(source_visualization)
- source_visualization
- แฮนเดิลไปยังอินสแตนซ์การแสดงภาพต้นฉบับที่ควรนำ Listener เหตุการณ์ทั้งหมดออก
trigger()
เรียกใช้โดยผู้ติดตั้งใช้งานการแสดงภาพ เรียกใช้วิธีการนี้จากการแสดงข้อมูลผ่านภาพเพื่อให้เหตุการณ์เริ่มทำงานด้วยชื่อและชุดค่าที่กำหนดเอง
google.visualization.events.trigger(source_visualization, event_name, event_args)
- source_visualization
- 
    แฮนเดิลของอินสแตนซ์การแสดงภาพต้นฉบับ หากเรียกใช้ฟังก์ชันนี้จากภายในเมธอดที่กำหนดโดยการส่งการแสดงภาพ ก็เพียงส่งผ่านคีย์เวิร์ด this
- event_name
- ชื่อสตริงที่จะเรียกใช้เหตุการณ์ คุณเลือกค่าสตริงที่ต้องการได้
- event_args
- [ไม่บังคับ] แมปของคู่ชื่อ/ค่าที่จะส่งต่อไปยังวิธีการรับ เช่น {message: "สวัสดี", คะแนน: 10, ชื่อ: "Fred"} คุณส่งผ่านค่า Null ได้หากไม่จำเป็นต้องมีเหตุการณ์ ควรเตรียมตัวรับให้ยอมรับ Null สำหรับพารามิเตอร์นี้
ตัวอย่าง
นี่คือตัวอย่างของการแสดงข้อมูลผ่านภาพที่แสดงเมธอดชื่อ "select" เมื่อมีการเรียกเมธอด onclick ของเมธอดดังกล่าว แต่จะไม่ส่งคืนค่าใดๆ
MyVisualization.prototype.onclick = function(rowIndex) {
  this.highlightRow(this.selectedRow, false); // Clear previous selection
  this.highlightRow(rowIndex, true); // Highlight new selection
  // Save the selected row index in case getSelection is called.
  this.selectedRow = rowIndex;
  // Trigger a select event.
  google.visualization.events.trigger(this, 'select', null);
}
พร็อพเพอร์ตี้และวิธีการแสดงข้อมูลผ่านภาพแบบมาตรฐาน
การแสดงข้อมูลผ่านภาพทั้งหมดควรแสดงชุดวิธีการและพร็อพเพอร์ตี้ที่จำเป็นและไม่บังคับต่อไปนี้ อย่างไรก็ตาม โปรดทราบว่าไม่มีการตรวจสอบประเภทเพื่อบังคับใช้มาตรฐานเหล่านี้ คุณจึงควรอ่านเอกสารประกอบสำหรับการแสดงภาพแต่ละรายการ
- เครื่องมือสร้าง
- draw()
- getAction() [ไม่บังคับ]
- getSelection() [ไม่บังคับ]
- removeAction() [ไม่บังคับ]
- setAction() [ไม่บังคับ]
- setSelection() [ไม่บังคับ]
หมายเหตุ: วิธีการเหล่านี้อยู่ในเนมสเปซของการแสดงภาพ ไม่ใช่เนมสเปซ google.visualization
เครื่องมือสร้าง
เครื่องมือสร้างควรมีชื่อของคลาสการแสดงภาพ และแสดงผลอินสแตนซ์ของคลาสนั้น
visualization_class_name(dom_element)
- dom_element
- ตัวชี้ไปยังองค์ประกอบ DOM ที่ควรฝังการแสดงภาพ
ตัวอย่าง
var org = new google.visualization.OrgChart(document.getElementById('org_div')); 
วาด()
วาดการแสดงผลบนหน้าเว็บ ส่วนเบื้องหลังอาจเป็นการดึงข้อมูลกราฟิกจากเซิร์ฟเวอร์ หรือสร้างกราฟิกในหน้าเว็บโดยใช้โค้ดการแสดงข้อมูลผ่านภาพที่ลิงก์ คุณควรเรียกใช้เมธอดนี้ทุกครั้งที่ข้อมูลหรือตัวเลือกมีการเปลี่ยนแปลง ควรวาดออบเจ็กต์ภายในองค์ประกอบ DOM ที่ส่งผ่านไปยังตัวสร้าง
draw(data[, options])
- ข้อมูล
- 
 DataTableหรือDataViewที่เก็บข้อมูลไว้ใช้เพื่อวาดแผนภูมิ ไม่มีวิธีการมาตรฐานในการดึงDataTableจากแผนภูมิ
- ตัวเลือก
- 
    [ไม่บังคับ] การแมปคู่ชื่อ/ค่าของตัวเลือกที่กำหนดเอง เช่น ความสูงและความกว้าง สีพื้นหลัง และคำบรรยายแทนเสียง เอกสารประกอบเกี่ยวกับการแสดงภาพควรแสดงตัวเลือกที่พร้อมใช้งาน และควรรองรับตัวเลือกเริ่มต้นหากคุณไม่ระบุพารามิเตอร์นี้
    คุณใช้ไวยากรณ์ลิเทอรัลออบเจ็กต์ JavaScript เพื่อส่งในแมปตัวเลือกได้ เช่น
    {x:100, y:200, title:'An Example'}
ตัวอย่าง
chart.draw(myData, {width: 400, height: 240, is3D: true, title: 'My Daily Activities'});
getAction()
ตัวเลือกนี้อาจเปิดเผยโดยการแสดงข้อมูลผ่านภาพที่มีเคล็ดลับเครื่องมือ และอนุญาตการดำเนินการกับเคล็ดลับเครื่องมือ
แสดงออบเจ็กต์การดำเนินการของเคล็ดลับเครื่องมือที่มี actionID ที่ขอ
ตัวอย่างเช่น
// Returns the action object with the ID 'alertAction'.
chart.getAction('alertAction');
getSelection()
ซึ่งจะแสดงด้วยการแสดงข้อมูลผ่านภาพ (ไม่บังคับ) ที่ต้องการให้คุณเข้าถึงข้อมูลที่เลือกในปัจจุบันในกราฟิกได้
selection_array getSelection()
การคืนสินค้า
  selection_array อาร์เรย์ของออบเจ็กต์ที่เลือก โดยแต่ละรายการอธิบายองค์ประกอบข้อมูลในตารางที่สำคัญซึ่งใช้ในการสร้างการแสดงภาพ (DataView หรือ DataTable) แต่ละออบเจ็กต์มีพร็อพเพอร์ตี้ row และ/หรือ column โดยมีดัชนีของแถวและ/หรือคอลัมน์ของรายการที่เลือกใน DataTable ที่สำคัญ หากพร็อพเพอร์ตี้ row เป็นค่าว่าง การเลือกจะเป็นคอลัมน์
  หากพร็อพเพอร์ตี้ column เป็นค่าว่าง การเลือกจะเป็นแถว หากทั้ง 2 รายการไม่ใช่ค่าว่าง
  จะถือว่าเป็นรายการข้อมูลที่เฉพาะเจาะจง คุณเรียกใช้เมธอด DataTable.getValue() เพื่อดูค่าของรายการที่เลือกได้ อาร์เรย์ที่ดึงมาส่งผ่านไปยัง
  setSelection() ได้
ตัวอย่าง
function myClickHandler(){
  var selection = myVis.getSelection();
  var message = '';
  for (var i = 0; i < selection.length; i++) {
    var item = selection[i];
    if (item.row != null && item.column != null) {
      message += '{row:' + item.row + ',column:' + item.column + '}';
    } else if (item.row != null) {
      message += '{row:' + item.row + '}';
    } else if (item.column != null) {
      message += '{column:' + item.column + '}';
    }
  }
  if (message == '') {
    message = 'nothing';
  }
  alert('You selected ' + message);
}
removeAction()
ตัวเลือกนี้อาจเปิดเผยโดยการแสดงข้อมูลผ่านภาพที่มีเคล็ดลับเครื่องมือ และอนุญาตการดำเนินการกับเคล็ดลับเครื่องมือ
  นำออบเจ็กต์การดำเนินการของเคล็ดลับเครื่องมือที่มี actionID ที่ขอออกจากแผนภูมิ
ตัวอย่างเช่น
// Removes an action from chart with the ID of 'alertAction'.
chart.removeAction('alertAction');
setAction()
ตัวเลือกนี้อาจเปิดเผยโดยการแสดงข้อมูลผ่านภาพที่มีเคล็ดลับเครื่องมือ และอนุญาตการดำเนินการกับเคล็ดลับเครื่องมือ โดยจะใช้ได้เฉพาะกับแผนภูมิหลัก (แท่ง คอลัมน์ เส้น พื้นที่ แผนภูมิกระจาย แผนภูมิผสม ลูกโป่ง วงกลม โดนัท แท่งเทียน ฮิสโตแกรม พื้นที่ขั้นบันได)
ตั้งค่าการดำเนินการเคล็ดลับเครื่องมือที่จะทำงานเมื่อผู้ใช้คลิกที่ข้อความการดำเนินการ
setAction(action object)
  เมธอด setAction จะนำออบเจ็กต์เป็นพารามิเตอร์การดำเนินการ ออบเจ็กต์นี้ควรระบุพร็อพเพอร์ตี้ 3 รายการ ได้แก่ id ได้แก่ รหัสของการดำเนินการที่กำลังตั้ง text ข้อความที่ควรปรากฏในเคล็ดลับเครื่องมือสำหรับการทำงาน และ action คือฟังก์ชันที่ควรเรียกใช้เมื่อผู้ใช้คลิกที่ข้อความการดำเนินการ
  คุณควรตั้งค่าการดำเนินการเคล็ดลับเครื่องมือทั้งหมดก่อนที่จะเรียกใช้เมธอด draw() ของแผนภูมิ
ตัวอย่างเช่น
// Sets a tooltip action which will pop an alert box on the screen when triggered.
chart.setAction({
  id: 'alertAction',
  text: 'Trigger Alert',
  action: function() {
    alert('You have triggered an alert');
  }
});
  เมธอด setAction จะกำหนดพร็อพเพอร์ตี้เพิ่มเติมอีก 2 รายการได้ด้วย ซึ่งได้แก่ visible และ enabled พร็อพเพอร์ตี้เหล่านี้ควรเป็นฟังก์ชันที่แสดงผลค่า boolean ที่ระบุว่าการดำเนินการของเคล็ดลับเครื่องมือจะปรากฏและ/หรือเปิดใช้หรือไม่
ตัวอย่างเช่น
// The visible/enabled functions can contain any logic to determine their state
// as long as they return boolean values.
chart.setAction({
  id: 'alertAction',
  text: 'Trigger Alert',
  action: function() {
    alert('You have triggered an alert');
  },
  visible: function() {
    return true;
  },
  enabled: function() {
    return true;
  }
});
setSelection()
  เลือกการป้อนข้อมูลในการแสดงภาพ เช่น จุดในแผนภูมิพื้นที่หรือแท่งในแผนภูมิแท่ง (ไม่บังคับ) เมื่อมีการเรียกเมธอดนี้ การแสดงภาพควรบ่งบอกถึงการเลือกใหม่อย่างชัดเจน การใช้งาน setSelection() ไม่ควรเริ่มการทำงานของเหตุการณ์ "select" การแสดงภาพอาจละเว้นการเลือกบางส่วน เช่น ตารางที่แสดงเฉพาะแถวที่เลือกอาจไม่สนใจองค์ประกอบของเซลล์หรือคอลัมน์ในการใช้งาน setSelection() หรือจะเลือกทั้งแถวก็ได้
  ทุกครั้งที่มีการเรียกวิธีนี้ ระบบจะยกเลิกการเลือกรายการที่เลือกทั้งหมดและควรใช้รายการการเลือกใหม่ที่ส่งผ่าน คุณไม่สามารถยกเลิกการเลือกแต่ละรายการอย่างชัดเจน หากต้องการยกเลิกการเลือกแต่ละรายการ ให้เรียกใช้ setSelection() พร้อมรายการที่จะคงการเลือกต่อไป หากต้องการยกเลิกการเลือกองค์ประกอบทั้งหมด ให้เรียกใช้ setSelection(), setSelection(null) หรือsetSelection([])
setSelection(selection_array)
- selection_array
- 
    อาร์เรย์ของออบเจ็กต์ โดยแต่ละรายการมีพร็อพเพอร์ตี้แถวและ/หรือคอลัมน์ที่เป็นตัวเลข rowและcolumnเป็นจำนวนแถวหรือคอลัมน์แบบ 0 ของรายการในตารางข้อมูลที่จะเลือก หากต้องการเลือกทั้งคอลัมน์ ให้ตั้งค่าrowเป็นค่าว่าง หากต้องการเลือกทั้งแถว ให้ตั้งค่าcolumnเป็น Null ตัวอย่าง:setSelection([{row:0,column:1},{row:1, column:null}])เลือกเซลล์ที่ (0,1) และแถว 1 ทั้งแถว
วิธีการแบบคงที่ต่างๆ
  ส่วนนี้ประกอบด้วยเมธอดที่มีประโยชน์ต่างๆ ซึ่งแสดงในเนมสเปซ google.visualization
arrayToDataTable()
เมธอดนี้จะใช้อาร์เรย์ 2 มิติ และแปลงเป็นตารางข้อมูล
  ระบบจะกำหนดประเภทข้อมูลคอลัมน์โดยอัตโนมัติจากข้อมูลที่ให้ไว้ คุณยังระบุประเภทข้อมูลคอลัมน์ได้โดยใช้รูปแบบสัญกรณ์ของออบเจ็กต์ในแถวแรก (แถวส่วนหัวคอลัมน์) ของอาร์เรย์ (เช่น {label: 'Start Date', type: 'date'}) คุณอาจใช้บทบาทข้อมูลที่ไม่บังคับได้เช่นกัน แต่ต้องมีการกำหนดอย่างชัดเจนโดยใช้รูปแบบสัญพจน์ของออบเจ็กต์  อาจใช้สัญลักษณ์ลิเทอรัลของออบเจ็กต์สำหรับเซลล์ใดก็ได้ ซึ่งจะช่วยให้คุณกำหนดออบเจ็กต์เซลล์ได้)
ไวยากรณ์
google.visualization.arrayToDataTable(twoDArray, opt_firstRowIsData)
- twoDArray
- อาร์เรย์ 2 มิติ ซึ่งแต่ละแถวแสดงแทนแถวในตารางข้อมูล หาก opt_firstRowIsData เป็นเท็จ (ค่าเริ่มต้น) ระบบจะตีความแถวแรกเป็นป้ายกำกับส่วนหัว ระบบจะตีความประเภทข้อมูลของแต่ละคอลัมน์โดยอัตโนมัติจากข้อมูลที่ให้ไว้ หากเซลล์ไม่มีค่า ให้ระบุค่า Null หรือค่าว่างตามความเหมาะสม
- opt_firstRowIsData
- ระบุว่าแถวแรกระบุแถวส่วนหัวหรือไม่ หากจริง ระบบจะถือว่าแถวทั้งหมดเป็นข้อมูล หากเป็นเท็จ ระบบจะถือว่าแถวแรกเป็นแถวส่วนหัวและระบุค่าเป็นป้ายกำกับคอลัมน์ ค่าเริ่มต้นคือ false
การคืนสินค้า
DataTable ใหม่
ตัวอย่าง
โค้ดต่อไปนี้แสดงวิธีการสร้างออบเจ็กต์ DataTable เดียวกัน 3 วิธี
// Version 1: arrayToDataTable method
var data2 = google.visualization.arrayToDataTable([
  [{label: 'Country', type: 'string'},
   {label: 'Population', type: 'number'},
   {label: 'Area', type: 'number'},
   {type: 'string', role: 'annotation'}],
  ['CN', 1324, 9640821, 'Annotated'],
  ['IN', 1133, 3287263, 'Annotated'],
  ['US', 304, 9629091, 'Annotated'],
  ['ID', 232, 1904569, 'Annotated'],
  ['BR', 187, 8514877, 'Annotated']
]);
// Version 2: DataTable.addRows
var data3 = new google.visualization.DataTable();
data3.addColumn('string','Country');
data3.addColumn('number','Population');
data3.addColumn('number','Area');
data3.addRows([
  ['CN', 1324, 9640821],
  ['IN', 1133, 3287263],
  ['US', 304, 9629091],
  ['ID', 232, 1904569],
  ['BR', 187, 8514877]
]);
// Version 3: DataTable.setValue
var data = new google.visualization.DataTable();
data.addColumn('string','Country');
data.addColumn('number', 'Population');
data.addColumn('number', 'Area');
data.addRows(5);
data.setValue(0, 0, 'CN');
data.setValue(0, 1, 1324);
data.setValue(0, 2, 9640821);
data.setValue(1, 0, 'IN');
data.setValue(1, 1, 1133);
data.setValue(1, 2, 3287263);
data.setValue(2, 0, 'US');
data.setValue(2, 1, 304);
data.setValue(2, 2, 9629091);
data.setValue(3, 0, 'ID');
data.setValue(3, 1, 232);
data.setValue(3, 2, 1904569);
data.setValue(4, 0, 'BR');
data.setValue(4, 1, 187);
data.setValue(4, 2, 8514877);
drawChart()
วิธีนี้จะสร้างแผนภูมิในการโทรครั้งเดียว ข้อดีของวิธีนี้คือต้องใช้โค้ดน้อยกว่าเล็กน้อย ทั้งยังเรียงลำดับและบันทึกการแสดงภาพเป็นสตริงข้อความเพื่อนำมาใช้ซ้ำได้ เมธอดนี้จะไม่ส่งคืนแฮนเดิลไปยังแผนภูมิที่สร้างขึ้น คุณจึงกำหนด Listener เมธอดให้จับเหตุการณ์ในแผนภูมิไม่ได้
ไวยากรณ์
google.visualization.drawChart(chart_JSON_or_object)
- chart_JSON_or_object
- สตริงลิเทอรัล JSON หรือออบเจ็กต์ JavaScript ที่มีพร็อพเพอร์ตี้ต่อไปนี้ (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
| พร็อพเพอร์ตี้ | ประเภท | จำเป็น | ค่าเริ่มต้น | คำอธิบาย | 
|---|---|---|---|---|
| chartType | สตริง | จำเป็น | ไม่มี | ชื่อคลาสของการแสดงภาพ ละเว้นชื่อแพ็กเกจ google.visualizationสำหรับแผนภูมิของ Google ได้  หากยังไม่ได้โหลดไลบรารีการแสดงภาพที่เหมาะสม วิธีนี้จะโหลดไลบรารีให้คุณหากเป็นการแสดงภาพจาก Google คุณต้องโหลดการแสดงภาพข้อมูลของบุคคลที่สามอย่างชัดแจ้ง เช่นTable,PieChart,example.com.CrazyChart | 
| containerId | สตริง | จำเป็น | ไม่มี | รหัสขององค์ประกอบ DOM ในหน้าเว็บที่จะโฮสต์การแสดงภาพ | 
| ตัวเลือก | ออบเจ็กต์ | ไม่บังคับ | ไม่มี | ออบเจ็กต์ที่อธิบายตัวเลือกสำหรับการแสดงภาพ คุณจะใช้สัญกรณ์ลิเทอรัล JavaScript หรือระบุแฮนเดิลให้กับออบเจ็กต์ก็ได้ ตัวอย่าง: "options": {"width": 400, "height": 240,
        "is3D": true, "title": "Company Performance"} | 
| dataTable | ออบเจ็กต์ | ไม่บังคับ | ไม่มี | DataTableที่ใช้เพื่อสร้างการแสดงภาพ ซึ่งอาจเป็นการแสดงสตริง JSON ตามตัวอักษรของ DataTable ตามที่อธิบายไว้ด้านบน หรือแฮนเดิลของออบเจ็กต์google.visualization.DataTableที่มีการป้อนข้อมูล หรืออาร์เรย์ 2 มิติที่คล้ายกับที่
        
          arrayToDataTable(opt_firstRowIsData=false)
        
      ยอมรับก็ได้
      คุณต้องระบุพร็อพเพอร์ตี้นี้หรือพร็อพเพอร์ตี้dataSourceUrl | 
| dataSourceUrl | สตริง | ไม่บังคับ | ไม่มี | การค้นหาแหล่งข้อมูลที่จะเติมข้อมูลในแผนภูมิ (เช่น สเปรดชีตของ Google) คุณต้องระบุพร็อพเพอร์ตี้นี้หรือพร็อพเพอร์ตี้ dataTable | 
| query | สตริง | ไม่บังคับ | ไม่มี | หากระบุ dataSourceUrlคุณจะเลือกระบุสตริงการค้นหาที่คล้าย SQL โดยใช้ภาษาการค้นหาของการแสดงภาพเพื่อกรองหรือจัดการข้อมูลได้ | 
| refreshInterval | ตัวเลข | ไม่บังคับ | ไม่มี | ความถี่เป็นวินาทีที่การแสดงภาพควรรีเฟรชแหล่งที่มาของคำค้นหา ใช้เมื่อระบุ dataSourceUrlเท่านั้น | 
| การดู | ออบเจ็กต์หรืออาร์เรย์ | ไม่บังคับ | ไม่มี | ตั้งค่าออบเจ็กต์เริ่มต้น DataViewซึ่งทำหน้าที่เป็นตัวกรองสำหรับข้อมูลพื้นฐาน ตามที่กำหนดโดยพารามิเตอร์dataTableหรือdataSourceUrlคุณจะส่งในสตริงหรือออบเจ็กต์เริ่มต้นDataViewก็ได้ ตามที่dataview.toJSON()แสดงผล
      ตัวอย่าง:"view": {"columns": [1, 2]}คุณยังส่งอาร์เรย์ของออบเจ็กต์เริ่มต้นDataViewได้ด้วย ซึ่งในกรณีนี้DataViewแรกในอาร์เรย์จะถูกนำไปใช้กับข้อมูลเบื้องหลังเพื่อสร้างตารางข้อมูลใหม่ และDataViewรายการที่ 2 จะใช้กับตารางข้อมูลที่เป็นผลมาจากการใช้DataViewแรก และอื่นๆ | 
ตัวอย่าง
สร้างแผนภูมิตารางตามแหล่งข้อมูลสเปรดชีต และรวมคำค้นหา SELECT A,D WHERE D > 100 ORDER BY D
<script type="text/javascript">
  google.charts.load('current');  // Note: No need to specify chart packages.
  function drawVisualization() {
    google.visualization.drawChart({
      "containerId": "visualization_div",
      "dataSourceUrl": "https://spreadsheets.google.com/a/google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1",
      "query":"SELECT A,D WHERE D > 100 ORDER BY D",
      "refreshInterval": 5,
      "chartType": "Table",
      "options": {
        "alternatingRowStyle": true,
        "showRowNumber" : true
      }
   });
 }
google.charts.setOnLoadCallback(drawVisualization);
</script>
ตัวอย่างต่อไปนี้จะสร้างตารางเดียวกัน แต่สร้าง DataTable ในเครื่อง:
<script type='text/javascript'>
  google.charts.load('current');
  function drawVisualization() {
    var dataTable = [
      ["Country", "Population Density"],
      ["Indonesia", 117],
      ["China", 137],
      ["Nigeria", 142],
      ["Pakistan", 198],
      ["India", 336],
      ["Japan", 339],
      ["Bangladesh", 1045]
    ];
    google.visualization.drawChart({
      "containerId": "visualization_div",
      "dataTable": dataTable,
      "refreshInterval": 5,
      "chartType": "Table",
      "options": {
        "alternatingRowStyle": true,
        "showRowNumber" : true,
      }
    });
  }
  google.charts.setOnLoadCallback(drawVisualization);
</script>
ตัวอย่างนี้ส่งผ่านการแสดงสตริง JSON ของแผนภูมิ ซึ่งอาจโหลดจากไฟล์
<script type="text/javascript">
  google.charts.load('current');
  var myStoredString = '{"containerId": "visualization_div",' +
    '"dataSourceUrl": "https://spreadsheets.google.com/a/google.com/tq?key=pCQbetd-CptGXxxQIG7VFIQ&pub=1",' +
    '"query":"SELECT A,D WHERE D > 100 ORDER BY D",' +
    '"refreshInterval": 5,' +
    '"chartType": "Table",' +
    '"options": {' +
    '   "alternatingRowStyle": true,' +
    '   "showRowNumber" : true' +
    '}' +
  '}';
  function drawVisualization() {
    google.visualization.drawChart(myStoredString);
  }
  google.charts.setOnLoadCallback(drawVisualization);
</script>
drawToolbar()
นี่คือเครื่องมือสร้างสำหรับองค์ประกอบแถบเครื่องมือที่สามารถแนบไปกับการแสดงภาพได้หลายรายการ แถบเครื่องมือนี้ช่วยให้ผู้ใช้ส่งออกข้อมูลการแสดงภาพเป็นรูปแบบต่างๆ หรือให้เวอร์ชันแสดงภาพแบบฝังได้เพื่อใช้ในที่ต่างๆ ดูข้อมูลเพิ่มเติมและตัวอย่างโค้ดในหน้าแถบเครื่องมือ