Why is pydot unable to find GraphViz's executables in Windows 8?

web_ninja picture web_ninja · Aug 26, 2013 · Viewed 152.3k times · Source

I have GraphViz 2.32 installed in Windows 8 and have added C:\Program Files (x86)\Graphviz2.32\bin to the System PATH variable. Still pydot is unable to find its executables.

Traceback (most recent call last):
  File "<pyshell#26>", line 1, in <module>
    graph.write_png('example1_graph.png')
  File "build\bdist.win32\egg\pydot.py", line 1809, in <lambda>
    lambda path, f=frmt, prog=self.prog : self.write(path, format=f, prog=prog))
  File "build\bdist.win32\egg\pydot.py", line 1911, in write
    dot_fd.write(self.create(prog, format))
  File "build\bdist.win32\egg\pydot.py", line 1953, in create
    'GraphViz\'s executables not found' )
InvocationException: GraphViz's executables not found

I found this https://code.google.com/p/pydot/issues/detail?id=65 but am unable to get the problem solved.

Answer

user3078690 picture user3078690 · Dec 8, 2013

The problem is that the path to GraphViz was not found by the pydot module as shown in the traceback:

'GraphViz\'s executables not found'

I solved this problem on my windows 7 machine by adding the GraphViz bin directory to my computer's PATH. Then restarting my python IDE to use the updated path.

  1. Install GraphViz if you haven't already (I used the MSI download)
  2. Get the path for gvedit.exe (for me it was "C:\Program Files (x86)\Graphviz2.34\bin\")
  3. Add this path to the computer's PATH
  4. One way to get to environment settings to set your path is to click on each of these button/menu options: start->computer->system properties->advanced settings->environment variables
  5. Click Edit User path
  6. Add this string to the end of your Variable value list (including semicolon): ;C:\Program Files (x86)\Graphviz2.34\bin
  7. Click OK
  8. Restart your Python IDE