ภาพรวม
ตารางที่จัดเรียงและแบ่งหน้าได้ คุณจะจัดรูปแบบเซลล์ของตารางได้โดยใช้สตริงรูปแบบ หรือโดยการแทรก HTML เป็นค่าของเซลล์โดยตรง ค่าตัวเลขจะอยู่ในแนวขวา ค่าบูลีนจะแสดงเป็นเครื่องหมายถูก ผู้ใช้สามารถเลือกแถวเดียวด้วยแป้นพิมพ์หรือเมาส์ก็ได้ ผู้ใช้จะจัดเรียงแถวได้โดยคลิกส่วนหัวของคอลัมน์ แถวส่วนหัวจะคงที่ขณะที่ผู้ใช้เลื่อนดู ตารางจะเริ่มการทำงานของจำนวนเหตุการณ์ที่สอดคล้องกับการโต้ตอบของผู้ใช้
ตัวอย่าง
<html>
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {'packages':['table']});
google.charts.setOnLoadCallback(drawTable);
function drawTable() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('number', 'Salary');
data.addColumn('boolean', 'Full Time Employee');
data.addRows([
['Mike', {v: 10000, f: '$10,000'}, true],
['Jim', {v:8000, f: '$8,000'}, false],
['Alice', {v: 12500, f: '$12,500'}, true],
['Bob', {v: 7000, f: '$7,000'}, true]
]);
var table = new google.visualization.Table(document.getElementById('table_div'));
table.draw(data, {showRowNumber: true, width: '100%', height: '100%'});
}
</script>
</head>
<body>
<div id="table_div"></div>
</body>
</html>
กำลังโหลด
ชื่อแพ็กเกจ google.charts.load คือ "table"
google.charts.load('current', {packages: ['table']});
ชื่อคลาสของการแสดงภาพคือ google.visualization.Table
var visualization = new google.visualization.Table(container);
รูปแบบข้อมูล
ระบบจะแปลง DataTable เป็นตาราง HTML ที่สอดคล้องกัน โดยแปลงแต่ละแถว/คอลัมน์ในตาราง DataTable เป็นแถว/คอลัมน์ในตาราง HTML แต่ละคอลัมน์ต้องเป็นประเภทข้อมูลเดียวกัน และระบบรองรับข้อมูลการแสดงภาพแบบมาตรฐานทั้งหมด (สตริง บูลีน ตัวเลข ฯลฯ)
พร็อพเพอร์ตี้ที่กำหนดเอง
คุณกำหนดพร็อพเพอร์ตี้ที่กำหนดเองต่อไปนี้ให้กับองค์ประกอบตารางข้อมูลได้โดยใช้เมธอด setProperty() ของ DataTable
| ชื่อพร็อพเพอร์ตี้ | ใช้กับ | คำอธิบาย |
|---|---|---|
| className | เซลล์ | ชื่อคลาสสตริงที่จะกำหนดให้กับแต่ละเซลล์ ใช้เพื่อกำหนดการจัดรูปแบบ CSS ให้กับแต่ละเซลล์ |
| รูปแบบ | เซลล์ | สตริงรูปแบบที่จะกำหนดให้แทรกในบรรทัดให้กับเซลล์ การดำเนินการนี้จะลบล้างรูปแบบคลาส CSS ที่ใช้กับเซลล์นั้น คุณต้องตั้งค่าพร็อพเพอร์ตี้ allowHtml=true จึงจะทำงานได้ ตัวอย่าง: 'border: 1px solid green;' |
ตัวอย่าง
dataTable.setCell(22, 2, 15, 'Fifteen', {style: 'font-style:bold; font-size:22px;'});
ตัวเลือกการกำหนดค่า
| ชื่อ | |
|---|---|
| allowHtml |
หากตั้งค่าเป็น "จริง" ค่าที่จัดรูปแบบของเซลล์ที่มีแท็ก HTML จะแสดงผลเป็น HTML หากตั้งค่าเป็น "เท็จ" ตัวจัดรูปแบบที่กำหนดเองส่วนใหญ่จะทำงานไม่ถูกต้อง ประเภท: บูลีน
ค่าเริ่มต้น: เท็จ
|
| alternatingRowStyle |
กำหนดว่าจะกำหนดรูปแบบการสลับสีให้กับแถวคู่และแถวคี่หรือไม่ ประเภท: บูลีน
ค่าเริ่มต้น: true
|
| cssClassNames |
ออบเจ็กต์ที่แต่ละชื่อพร็อพเพอร์ตี้อธิบายองค์ประกอบตาราง และค่าพร็อพเพอร์ตี้เป็นสตริงที่กำหนดคลาสที่จะกำหนดให้กับองค์ประกอบตารางนั้น ใช้พร็อพเพอร์ตี้นี้เพื่อกำหนด CSS ที่กำหนดเองให้กับองค์ประกอบที่เฉพาะเจาะจงของตาราง หากต้องการใช้พร็อพเพอร์ตี้นี้ ให้กำหนดออบเจ็กต์ โดยชื่อพร็อพเพอร์ตี้จะระบุองค์ประกอบตาราง และค่าพร็อพเพอร์ตี้เป็นสตริงซึ่งระบุชื่อคลาสที่จะกำหนดให้กับองค์ประกอบนั้น จากนั้นคุณต้องกำหนดรูปแบบ CSS สำหรับคลาสนั้นในหน้าเว็บ ชื่อพร็อพเพอร์ตี้ที่รองรับมีดังนี้
ตัวอย่าง:
หมายเหตุ: ใน CSS องค์ประกอบบางอย่างจะลบล้างองค์ประกอบอื่นๆ เช่น หากคุณระบุสีพื้นหลังสำหรับองค์ประกอบ ประเภท: ออบเจ็กต์
ค่าเริ่มต้น: null
|
| firstRowNumber |
หมายเลขแถวสำหรับแถวแรกในตาราง dataTable ใช้เฉพาะเมื่อ showRowNumber เป็นจริงเท่านั้น ประเภท: ตัวเลข
ค่าเริ่มต้น: 1
|
| frozenColumns |
จำนวนคอลัมน์จากด้านซ้ายที่จะถูกตรึง คอลัมน์เหล่านี้จะยังคงอยู่ในตำแหน่งเดิมเมื่อเลื่อนคอลัมน์ที่เหลือในแนวนอน หาก ประเภท: ตัวเลข
ค่าเริ่มต้น: null
|
| ส่วนสูง |
กำหนดความสูงขององค์ประกอบคอนเทนเนอร์ของการแสดงภาพ คุณใช้หน่วย HTML มาตรฐานได้ (เช่น "100px", "80em", "60") หากไม่ได้ระบุหน่วย ระบบจะถือว่าตัวเลขเป็นพิกเซล หากไม่ระบุ เบราว์เซอร์จะปรับความสูงให้พอดีกับตารางโดยอัตโนมัติ โดยจะย่อขนาดลงให้ได้มากที่สุดเท่าที่จะเป็นไปได้ หากกำหนดน้อยกว่าความสูงที่กำหนด ตารางจะเพิ่มแถบเลื่อนแนวตั้ง (แถวส่วนหัวถูกตรึงไว้ด้วย) หากตั้งค่าเป็น "100%" ตารางจะขยายไปยังองค์ประกอบคอนเทนเนอร์ให้ได้มากที่สุด ประเภท: สตริง
ค่าเริ่มต้น: อัตโนมัติ
|
| เพจ |
เปิดใช้การแบ่งหน้าข้อมูลหรือไม่ และวิธีเปิดใช้ เลือกค่าสตริงค่าใดค่าหนึ่งต่อไปนี้
ประเภท: สตริง
ค่าเริ่มต้น: "disable"
|
| pageSize |
จำนวนแถวในแต่ละหน้า เมื่อเปิดใช้การแบ่งหน้าด้วยตัวเลือกหน้าเว็บ ประเภท: ตัวเลข
ค่าเริ่มต้น: 10
|
| pagingButtons |
ตั้งค่าตัวเลือกที่ระบุสำหรับปุ่มการแบ่งหน้า โดยมีตัวเลือกดังต่อไปนี้
ประเภท: สตริงหรือหมายเลข
ค่าเริ่มต้น: "auto"
|
| rtlTable |
เพิ่มการรองรับพื้นฐานสำหรับภาษาที่อ่านจากขวาไปซ้าย (เช่น อาหรับหรือฮีบรู) โดยกลับลำดับคอลัมน์ของตาราง เพื่อให้คอลัมน์ 0 เป็นคอลัมน์ด้านขวาสุด และคอลัมน์สุดท้ายคือคอลัมน์ด้านซ้ายสุด การดำเนินการนี้ไม่ส่งผลต่อดัชนีคอลัมน์ในข้อมูลที่สำคัญ แต่ส่งผลเฉพาะกับลำดับของการแสดงผลเท่านั้น การแสดงภาพตารางไม่รองรับการแสดงภาษาแบบ 2 ทิศทาง (BiDi) เต็มรูปแบบแม้ว่าจะใช้ตัวเลือกนี้ก็ตาม ระบบจะไม่สนใจตัวเลือกนี้หากคุณเปิดใช้การแบ่งหน้า (โดยใช้ตัวเลือกหน้า) หรือหากตารางมีแถบเลื่อนเนื่องจากคุณได้ระบุตัวเลือกความสูงและความกว้างที่เล็กกว่าขนาดตารางที่กำหนด ประเภท: บูลีน
ค่าเริ่มต้น: เท็จ
|
| scrollLeftStartPosition |
กำหนดตำแหน่งการเลื่อนแนวนอนในหน่วยพิกเซล หากตารางมีแถบเลื่อนแนวนอนเนื่องจากคุณตั้งค่าพร็อพเพอร์ตี้ความกว้างไว้ ตารางจะเปิดขึ้นโดยเลื่อนผ่านไปหลายพิกเซลผ่านคอลัมน์ด้านซ้ายสุด ประเภท: ตัวเลข
ค่าเริ่มต้น: 0
|
| showRowNumber |
หากตั้งค่าเป็น "จริง" จะแสดงหมายเลขแถวเป็นคอลัมน์แรกของตาราง ประเภท: บูลีน
ค่าเริ่มต้น: เท็จ
|
| จัดเรียง |
วิธีการจัดเรียงคอลัมน์เมื่อผู้ใช้คลิกส่วนหัวของคอลัมน์ หากเปิดใช้การจัดเรียง ให้พิจารณาตั้งค่าพร็อพเพอร์ตี้ SortAscending และ SortColumn ด้วย เลือกค่าสตริงค่าใดค่าหนึ่งต่อไปนี้
ประเภท: สตริง
ค่าเริ่มต้น: "enable"
|
| sortAscending |
ลำดับการจัดเรียงคอลัมน์การจัดเรียงเริ่มต้น True สำหรับน้อยไปมาก, False สำหรับมากไปน้อย ไม่สนใจหากไม่ได้ระบุ ประเภท: บูลีน
ค่าเริ่มต้น: true
|
| sortColumn |
ดัชนีของคอลัมน์ในตารางข้อมูล ซึ่งเป็นการจัดเรียงตารางในตอนแรก คอลัมน์จะมีลูกศรเล็กๆ ที่ระบุลำดับการจัดเรียง ประเภท: ตัวเลข
ค่าเริ่มต้น: -1
|
| startPage |
หน้าแรกของตารางที่แสดง ใช้เฉพาะเมื่อ ประเภท: ตัวเลข
ค่าเริ่มต้น: 0
|
| ความกว้าง |
กำหนดความกว้างขององค์ประกอบคอนเทนเนอร์ของการแสดงภาพ คุณใช้หน่วย HTML มาตรฐานได้ (เช่น "100px", "80em", "60") หากไม่ได้ระบุหน่วย ระบบจะถือว่าตัวเลขเป็นพิกเซล หากไม่ระบุ เบราว์เซอร์จะปรับความกว้างให้พอดีกับตารางโดยอัตโนมัติ โดยจะย่อขนาดลงให้มากที่สุดเท่าที่จะทำได้ หากกำหนดน้อยกว่าความกว้างที่กำหนด ตารางจะเพิ่มแถบเลื่อนแนวนอน หากตั้งค่าเป็น "100%" ตารางจะขยายไปยังองค์ประกอบคอนเทนเนอร์ให้ได้มากที่สุด ประเภท: สตริง
ค่าเริ่มต้น: อัตโนมัติ
|
วิธีการ
| วิธีการ | |
|---|---|
draw(data, options) |
วาดตาราง ประเภทการคืนสินค้า: ไม่มี
|
getSelection() |
การใช้ getSelection มาตรฐาน องค์ประกอบการเลือกเป็นองค์ประกอบแถวทั้งหมด แสดงผลแถวที่เลือกได้มากกว่า 1 แถว ดัชนีแถวในออบเจ็กต์การเลือกจะอ้างอิงตารางข้อมูลต้นฉบับโดยไม่คำนึงถึงการโต้ตอบของผู้ใช้ (จัดเรียง การแบ่งหน้า ฯลฯ) โปรดทราบว่าการเปิด/ปิดการเลือก: การคลิกเซลล์ในครั้งแรกจะเลือกเซลล์นั้น การคลิกเซลล์อีกครั้งจะเป็นการยกเลิกการเลือก ซึ่งจะส่งผลให้เกิดเหตุการณ์การเลือก แต่จะไม่มีการเลือกรายการที่เลือกในออบเจ็กต์การเลือกที่ดึงมา ประเภทผลลัพธ์: อาร์เรย์ขององค์ประกอบการเลือก
|
getSortInfo() |
เรียกใช้เมธอดนี้เพื่อเรียกข้อมูลเกี่ยวกับสถานะการจัดเรียงปัจจุบันของตารางที่มีการจัดเรียง (โดยปกติผู้ใช้มักจะคลิกส่วนหัวของคอลัมน์เพื่อจัดเรียงแถวตามคอลัมน์ที่ระบุ) หากคุณปิดใช้การจัดเรียง วิธีการนี้จะไม่สามารถใช้งานได้ หากคุณไม่ได้จัดเรียงข้อมูลในโค้ด หรือผู้ใช้ไม่ได้จัดเรียงข้อมูลโดยเลือกโค้ด ระบบจะส่งคืนค่าการจัดเรียงเริ่มต้น ประเภทผลลัพธ์: ออบเจ็กต์ที่มีพร็อพเพอร์ตี้ต่อไปนี้
|
setSelection(selection) |
การใช้งาน ประเภทการคืนสินค้า: ไม่มี
|
clearChart() |
ล้างแผนภูมิ และปล่อยทรัพยากรที่จัดสรรทั้งหมด ประเภทการคืนสินค้า: ไม่มี
|
กิจกรรม
| ชื่อ | |
|---|---|
| เลือก |
เหตุการณ์การเลือกแบบมาตรฐาน แต่เลือกได้เพียงทั้งแถวเท่านั้น ที่พัก: ไม่มี
|
| เพจ |
ทริกเกอร์เมื่อผู้ใช้คลิกปุ่มการนำทางหน้าเว็บ พร็อพเพอร์ตี้:
page: ตัวเลข ดัชนีของหน้าที่จะไปยังส่วนต่างๆ |
| จัดเรียง |
ทริกเกอร์เมื่อผู้ใช้คลิกส่วนหัวของคอลัมน์และตัวเลือกการจัดเรียงไม่ใช่ "ปิดใช้" คุณสมบัติ: ออบเจ็กต์ที่มีพร็อพเพอร์ตี้ต่อไปนี้
|
| พร้อม |
แผนภูมิพร้อมสำหรับการเรียกใช้เมธอดภายนอกแล้ว หากต้องการโต้ตอบกับแผนภูมิและวิธีเรียกใช้หลังจากที่วาดแล้ว คุณควรตั้งค่า Listener สำหรับเหตุการณ์นี้ก่อนที่จะเรียกวิธีการวาด และเรียกใช้หลังจากที่เหตุการณ์เริ่มทำงานแล้วเท่านั้น ที่พัก: ไม่มี
|
ตัวจัดรูปแบบ
หมายเหตุ: การแสดงภาพตารางมีชุดออบเจ็กต์ตัวจัดรูปแบบที่มีตัวจัดรูปแบบทั่วไปมาแทนที่ ซึ่งมีลักษณะการทำงานแบบเดียวกัน แต่ใช้ในการแสดงภาพใดก็ได้
ตารางต่อไปนี้แสดงตัวจัดรูปแบบตารางแบบเดิมและตัวจัดรูปแบบทั่วไปที่เทียบเท่ากัน คุณควรใช้เครื่องมือจัดรูปแบบทั่วไปเมื่อเขียนโค้ดใหม่
| ตัวจัดรูปแบบตาราง | |
|---|---|
| TableArrowFormat | google.visualization.ArrowFormat |
| TableBarFormat | google.visualization.BarFormat |
| TableColorFormat | google.visualization.ColorFormat |
| TableDateFormat | google.visualization.DateFormat |
| TableNumberFormat | google.visualization.NumberFormat |
| TablePatternFormat | google.visualization.PatternFormat |
สำคัญ: ตัวจัดรูปแบบมักจะใช้ HTML เพื่อจัดรูปแบบข้อความ คุณจึงควรตั้งค่าตัวเลือก allowHtml เป็น true
นโยบายข้อมูล
โค้ดและข้อมูลทั้งหมดจะได้รับการประมวลผลและแสดงผลในเบราว์เซอร์ โดยจะไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์ใดๆ