เอกสารนี้จะอธิบายวิธีสร้างแผนภูมิ GraphViz โดยใช้ Chart API
ภาพรวม
GraphViz คือแพ็กเกจเครื่องมือโอเพนซอร์สสำหรับแสดงภาพกราฟการเชื่อมต่อ คุณสร้างกราฟ GraphViz โดยใช้ภาษา DOT และเครื่องมือเลย์เอาต์ที่คุณเลือกได้
แผนภูมิ GraphViz รองรับชุดพารามิเตอร์ที่จำเป็นชุดอื่นๆ พารามิเตอร์ที่รองรับมีดังนี้
พารามิเตอร์ | ต้องระบุหรือไม่บังคับ | คำอธิบาย |
---|---|---|
cht=gv[:<opt_engine>] |
จำเป็น | ระบุแผนภูมิ GraphViz คุณจะระบุเครื่องมือ GraphViz หรือไม่ก็ได้ หากต้องการระบุเครื่องมือการออกแบบ ให้ใส่เครื่องหมายเซมิโคลอน : และระบุสตริงใดสตริงหนึ่งต่อไปนี้สำหรับ <opt_engine>:
ดูคำอธิบายเกี่ยวกับเครื่องมือต่างๆ เหล่านี้ในเว็บไซต์ GraphViz |
chs=<width>x<height> |
ไม่บังคับ | หากคุณไม่ระบุขนาด ระบบจะกำหนดขนาดแผนภูมิโดยอัตโนมัติ |
chl=<DOT_string> |
จำเป็น | แผนภูมิที่จะวาดในรูปแบบภาษา DOT ดูข้อมูลอ้างอิงภาษาของ DOT ได้ในเว็บไซต์ GraphViz |
chd |
ไม่ได้ใช้ | โค้ด GraphViz ผิดปกติเนื่องจากไม่สนใจพารามิเตอร์ chd อย่ารวมไว้ใน URL |
chof=<output_format> |
ไม่บังคับ | รูปแบบเอาต์พุตสำหรับแผนภูมิ ดูคำอธิบายพารามิเตอร์เพื่อดูรูปแบบเอาต์พุตที่รองรับ หากระบุ chof=json คุณจะได้รับการแสดงแผนภูมิ JSON เป็นการแมปรูปภาพ HTML ซึ่งสามารถใช้เพิ่มลิงก์หรือการโต้ตอบในแผนภูมิได้ ดูรายละเอียดได้ที่การสร้างแผนที่รูปภาพแผนภูมิ |
callback=<handling_function_name> |
ไม่บังคับ | หากระบุ chof=json คุณจะระบุฟังก์ชันที่จะเรียกใช้ด้วย JSON ที่แสดงผลซึ่งมีการแมปภาพของแผนภูมิได้ด้วย
ฟังก์ชันต้องยอมรับพารามิเตอร์ JSON รายการเดียว ซึ่งจะเป็นตัวแทน JSON ของแผนภูมิ จากนั้นหน้าสามารถระบุแผนภูมิเป็นเอลิเมนต์ <img> เพื่อแสดงแผนภูมิ และยังเรียกใช้ URL เดียวกันด้วย chof=json&callback=somefunc และมีฟังก์ชันชื่อ somefunc() ที่จะแยกวิเคราะห์ JSON ที่แสดงผลและเพิ่มลิงก์หรือการโต้ตอบ |
ตัวอย่างเช่น
คำอธิบาย | ตัวอย่าง |
---|---|
ตัวอย่างจุดเอนจิน (ค่าเริ่มต้น) |
|
ตัวอย่างเครื่องมือ Neato ของแผนภูมิเดียวกัน | cht=gv:neato |
แผนภูมิจุดที่ไม่ได้ระบุขนาด ระบบจะปรับขนาดแผนภูมิให้โดยอัตโนมัติ | cht=gv |
แผนภูมิที่ซับซ้อนมากขึ้น | cht=gv |
ต่อไปนี้เป็นเคล็ดลับและข้อจำกัดที่ทราบในแผนภูมิ GraphViz ปัจจุบัน
- ไม่ควรใช้แอตทริบิวต์
graph
size
แต่ให้ใช้พารามิเตอร์ Chart APIchs
แทน - จำนวนโหนดสูงสุดคือ 200 และสูงสุดสำหรับ EDGE คือ 400
- ไม่รองรับการลบรอยหยัก ความโปร่งใส และแบบอักษรสำรอง
- ระบบไม่รองรับแอตทริบิวต์
node
image
และshapefile
และจะทำให้เกิดข้อผิดพลาด (หากมี) - ระบบไม่รองรับแอตทริบิวต์
graph
ratio
,margin
และpad
และจะละเว้นหากมี