Cuando ejecuto un código muy simple con pydot
import pydot
graph = pydot.Dot(graph_type='graph')
for i in range(3):
edge = pydot.Edge("king", "lord%d" % i)
graph.add_edge(edge)
vassal_num = 0
for i in range(3):
for j in range(2):
edge = pydot.Edge("lord%d" % i, "vassal%d" % vassal_num)
graph.add_edge(edge)
vassal_num += 1
graph.write_png('example1_graph.png')
Me imprime el mensaje de error:
Couldn't import dot_parser, loading of dot files will not be possible.
Estoy usando python 2.7.3
python
python-2.7
graphviz
pydot
Sadik
fuente
fuente
pip install pydot2
debería solucionar este problema. Mucho mejor que usarlopip uninstall
porque si comparte código puede agregar pydot2 a su requirements.txt y no dejar que los usuarios ejecuten comandos desconocidos.Respuestas:
Respuesta por
pydot >= 1.1
:La incompatibilidad de (upstream)
pydot
ha sido corregida por 6dff94b3f1 y, porpydot >= 1.1
lo tanto , será compatible conpyparsing >= 1.5.7
.Respuesta aplicable a
pydot <= 1.0.28
:Para cualquier otra persona que se encuentre con esto, se debe a los cambios en pyparsing de 1.xa la versión 2.x. Para instalar pydot usando pip, primero instale la versión anterior de pyparsing:
Si no lo instaló
pyparsing
usandopip
, sino que lo usósetup.py
, eche un vistazo a esta solución para desinstalar el paquete. Gracias @qtips.fuente
sudo pip uninstall
no funciona si ha instalado su paquete usandopython setup.py install
en ese caso, siga esta solución. Este fue al menos el caso en mi Mac Mountain Lion OSXsudo
obviamente no siempre es necesario, como si estuviera usando un virtualenv. Aparte de eso, ¡esto funcionó para mí!pip install pyparsing==1.5.7
?Hay un nuevo paquete en el repositorio pip llamado pydot2 que funciona correctamente con pyparsing2. No pude degradar mis paquetes porque matplotlib depende del paquete pyparsing más nuevo.
Nota: python2.7 de macports
fuente
pydotprint
que funcione.pydot usó una variable de módulo privada (_noncomma) de pyparsing. La siguiente diferencia lo corrige para usarlo en pyparsing 2.0.1:
fuente
Bifurqué el repositorio de pydot [1], apliqué el parche de Gabi Davar y algunos cambios para admitir python-3. El paquete está disponible en PyPI [2].
Salud
fuente
pip install...
falló en el medio sin error explícito. Parece que el manifiesto y los archivos reales no coinciden. Reviso el repositorio de git ymv README.rst README
luegopython setup.py install
. Esto funcionó para mí :-)pip install pydot2
funciona y este enlace, pypi.python.org/pypi/pydot2/1.0.32 , funciona.$ sudo pip uninstall pydot
$ sudo pip install pydot2
Consulte el siguiente enlace: http://infidea.net/troubleshooting-couldnt-import-dot_parser-loading-of-dot-files-will-not-be-possible/
fuente
pip uninstall pydot2
y luegopip install pydot
para corregir el error. Aquí está el enlace de la respuesta correcta: github.com/pydot/pydot/issues/166#issuecomment-356066120La solución no fue instalar pydot desde algún lugar, sino "python-pydot" desde los repositorios oficiales de ubuntu.
fuente
pip install python-pydot
no me funciona (no se encontró la distribución);pip install pydot
hace. Así que no creo quepydot
sea necesariamente extraoficial. ¿Quizás estaba instalando a través de una distribución de sistema operativo?sudo apt-get install python-pydot
hice por mí.python-pyparsing
en 1.5.2, lo que evita la incompatibilidad de versiones mencionada anteriormente. Fui con la solución anterior y no he tenido problemas desde entonces. ¡Gracias!Ahora hay al menos 2 versiones más que parecen ser compatibles con PyParsing-2 y Python-3:
site-packages\pydotplus
asite-packages\pydot
para que funcione con los programas existentes que importan pydot.fuente
Tuve el problema nuevamente y mi solución anterior no funcionó. Si eso es cierto para usted y también está usando Anaconda en una Mac con El Capitan, intente esto:
fuente
Lo que hice al final después de tantos intentos de lo que vi aquí (pseudo secuencia para que funcione para networkx):
fuente
Esto funcionó para mí (Mac OS X 10.9 con Python 2.7.10 en Anaconda):
Luego,
Pyparsing luego se degrada (de 2.xa 1.5.7) tras la instalación de pydot. Futuros Googlers: esto me permitió instalar e importar Theano correctamente.
fuente
En OSX Mavericks lo siguiente funcionó ... Obtuve el mismo error pero en la parte inferior también había una queja de que el ejecutable graphviz no estaba presente ... Creo que el problema fue que había instalado Graphviz antes que los otros módulos.
fuente
Cuando otras soluciones no funcionan, este es un método rápido y sucio para resolver el problema:
Este ejemplo es de python 2.7 en Ubuntu 16.04.
Edite el archivo python2.7 / site-packages / keras / utils / visualize_util.py y comente el segmento de código a continuación.
find_graphviz () es redundante en las versiones más recientes de pydot y la llamada anterior no funciona.
fuente
También encontré el problema y mi pydot == 1.0.28 mientras pyparsing == 2.2.0. Solucioné el problema descargando el último pydot 1.2.3 (tar.gz) de Google y luego lo instalé sin conexión. Cuando actualicé pydot en ubuntu 14.04, decía que pydot 1.0.28 es la versión más nueva. Por eso descargo de google la versión 1.2.3.
fuente
Necesita degradar pyparsing de la versión 2.xa la versión 1.5.7 para que pydot funcione correctamente.
Para win-64, usando Conda, esto funcionó para mí:
Luego deshabilité / desinstalé la versión 2.xy recargué pyparsing en mi script:
Para comprobar si tiene la versión correcta en ejecución:
fuente