ดังนั้นฉันจึงติดตั้งแพ็คเกจ anytree แล้ว (หลังจากพยายามอย่างมาก ฉันต้องเพิ่มตัวแปรสภาพแวดล้อมบางอย่างในระบบของฉัน) เมื่อทำสิ่งนี้แล้ว ฉันสามารถใช้ฟังก์ชันเกือบทั้งหมดของแพ็คเกจ Anytree ได้ ไม่ใช่ฟังก์ชันที่ฉันต้องการ ฉันต้องการใช้ graphviz ร่วมกับแพ็คเกจ anytree เพื่อสร้างกราฟต้นไม้โดยใช้คำสั่ง 'DotExporter'
ฉันได้ติดตั้ง Graphviz; เส้นทางของมันคือ C:\Users\joel\Anaconda3_2\Lib\site-packages\graphviz และฉันยังได้เพิ่มบรรทัดของโค้ด 'from anytree.exporter import DotExporter' ลงในเอกสาร Python ของฉัน (นอกเหนือจากการนำเข้า anytree อื่น ๆ ที่จำเป็น เพื่อสร้างต้นไม้)
ดังนั้น เมื่อกำหนดโหนดรูท 'root' ของทรีของฉันแล้ว ตอนนี้ฉันควรจะสามารถสร้างไฟล์ png และจุดของทรีได้โดยใช้คำสั่ง 'DotExporter(root).to_picture('root.png')' อย่างใดอย่างหนึ่ง ฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
'FileNotFoundError: [WinError 2] ระบบไม่พบไฟล์ที่ระบุ'
ไม่มีใครรู้ว่าเกิดอะไรขึ้น? ฉันใช้ Python 3.6.2 กับเอ็นจิ้น Spyder ซึ่งเป็นส่วนหนึ่งของการกระจาย Anaconda (ฉันมี Anaconda 3.2) ฉันมั่นใจ 99% ว่าฉันมี Anytree และ Graphviz เวอร์ชันล่าสุด
อัปเดต: ดังนั้นฉันจึงได้เรียนรู้ว่ามีปัญหาความเข้ากันได้ใหญ่ระหว่าง Anaconda และ Graphviz มาเป็นเวลาประมาณหนึ่งปีแล้วและสันนิษฐานว่านี่คือปัญหา หลังจากลองวิธีแก้ปัญหาทั้งหมดที่มีคนแนะนำ ฉันยังไม่สามารถทำให้โปรแกรมทำงานได้ ฉันจึงลงเอยด้วยการถอนการติดตั้ง Anaconda และเริ่มใช้ PyCharm ร่วมกับล่าม Python มาตรฐานแทน อย่างไรก็ตาม โปรแกรมยังคงไม่ทำงาน ดังนั้นแม้ว่าจะมีปัญหาความเข้ากันได้ระหว่าง Anaconda และ Graphviz แต่ปรากฏว่านั่นไม่ใช่ปัญหา ฉันลองใช้โปรแกรมบนเครื่องของเพื่อนบ้านซึ่งใช้อนาคอนดาเหมือนกัน และพบข้อผิดพลาดแบบเดียวกับที่ฉันได้รับ
ในที่สุดฉันก็พบวิธีแก้ปัญหาต่อไปนี้: ฉันไม่สามารถรับคำสั่ง 'DotExporter(root).to_picture('root.png')' ให้ทำงานได้ แต่ใช้คำสั่ง 'DotExporter(root).to_dotfile('root.dot') ' คำสั่งกำลังทำงาน ไฟล์ '.dot' มีโค้ดและสามารถเปิดได้ใน Notepad (โปรแกรมประมวลผลคำอื่นๆ ก็ใช้งานได้เช่นกัน) ดังนั้นฉันจึงต้องหาวิธีสร้างกราฟต้นไม้โดยใช้ไฟล์ dot แทนที่จะใช้คำสั่ง 'DotExporter(root).to_picture('root.png')' วิธีที่ง่ายที่สุดในการดำเนินการนี้คือผ่านเครื่องมือออนไลน์อย่างใดอย่างหนึ่ง http://www.webgraphviz.com/ และ http://sandbox.kidstrythisathome.com/erdos/ เพียงเปิดไฟล์ dot ของคุณใน Notepad คัดลอกเนื้อหาและวางลงในเว็บไซต์แล้วกดสร้าง
python-graphviz
ด้วย เห็นได้ชัดว่านี่เป็นเรื่องยุ่งเล็กน้อย: github.com/ContinuumIO/anaconda-issues/ ประเด็น/1666 - person darthbith   schedule 21.07.2018