6
votes

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

2 Answers

6
votes

I was getting the same error. I also used pip3 to install graphviz. But when I installed graphviz using following command, it solved my issue.

sudo apt install graphviz
2
votes

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