How to Render Graph in Python using graphviz and anytree packages

Viewed 6544

I'm following this documentation of anytree package to render the graph. Please note i have install graphviz on my mac using

pip3 install graphviz

When I try to execute this

RenderTreeGraph(udo).to_picture("udo.png")

Im getting following errors

Traceback (most recent call last): File "", line 1, in RenderTreeGraph(udo).to_picture("udo.png") File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/anytree/dotexport.py", line 51, in to_picture check_call(cmd) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 286, in check_call retcode = call(*popenargs, **kwargs) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 267, in call with Popen(*popenargs, **kwargs) as p: File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 707, in init restore_signals, start_new_session) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1326, in _execute_child raise child_exception_type(errno_num, err_msg) FileNotFoundError: [Errno 2] No such file or directory: 'dot'

please help me render tree

2 Answers

Please do the following steps:

  1. Determine where graphviz is installed. Typically there is a bin subdirectory. Copy the path to location where the file dot is located. (Just the directory)
  2. Edit your PATH variable and append the path from above. Please ask google how to do this on your machine.

HTH

Related