ฉันต้องการใช้ไฟล์อินพุต graphviz แบบง่าย ๆ (หรืออย่างง่าย ๆ อย่างสัญกรณ์ X -> Y) และมีกราฟที่ฉันสามารถจัดระเบียบตำแหน่งของโหนดใหม่โดยไม่ต้องระบุพิกัดด้วยมือ มีวิธีทำเช่นนี้หรือไม่?
ฉันต้องการใช้ไฟล์อินพุต graphviz แบบง่าย ๆ (หรืออย่างง่าย ๆ อย่างสัญกรณ์ X -> Y) และมีกราฟที่ฉันสามารถจัดระเบียบตำแหน่งของโหนดใหม่โดยไม่ต้องระบุพิกัดด้วยมือ มีวิธีทำเช่นนี้หรือไม่?
คำตอบ:
หากคุณเรียกใช้ graphviz ในโหมดเอาต์พุต SVG คุณจะได้รับไฟล์ SVG ซึ่งคุณสามารถแก้ไขได้อย่างง่ายดาย (เช่นด้วย Inkscape)
dot -Tsvg foo.dot > foo.svg
หรือเรียบร้อยหรืออะไรก็ตาม -Tfig
(xfig), -Tmif
(FrameMaker) -Tps
(PostScript) และ-Tdia
( dia , เครื่องมือสร้างไดอะแกรม Linux / GTK) อาจทำงานได้ขึ้นอยู่กับซอฟต์แวร์ที่คุณมี รายการที่สมบูรณ์ของรูปแบบการออกสามารถใช้ได้
แน่นอนประเด็นของกราฟวิซคือคุณไม่จำเป็นต้องวางมันลงบนมือ ... คุณเคยดูตัวเลือกกราฟวิซบางอย่างหรือไม่? พวกเขาอาจบรรเทาปัญหาที่คุณมี
คุณสามารถทำได้โดยขึ้นอยู่กับความต้องการของคุณในการแก้ไข:
neato -Tsvg pollo.graph > pollo.svg
และจากนั้นคุณสามารถแก้ไขไฟล์ด้วยinkscapeเป็นต้น
ปัญหาคือว่ามันไม่ได้รักษาการเชื่อมต่อระหว่างวัตถุ