Te damos la bienvenida a nuestra página web, ahora vas a encontrar la respuesta de lo que andabas buscando.
Solución:
Aquí están los pasos que funcionaron para mí. Gran parte de esta información estaba disponible, pero se distribuyó en varias publicaciones diferentes de StackOverflow y otros sitios web. Espero que esto sirva como un buen recurso integral.
-
Vaya al sitio web de Graphviz y descárguelo e instálelo en su computadora (NO es necesario instalarlo para todos los usuarios).
-
Descargue e instale Anaconda3.5 desde el sitio web de Continuum.
-
Agregue Graphviz a la variable de entorno “Path”:
- Ir
Computer > Properties > Advanced system settings > Environment Variables
y luego busque “Ruta” en el cuadro de variables del sistema. Haga clic en Ruta y haga clic en editar. - Adjuntar
;C:Program Files (x86)Graphviz2.38bin
hasta el final de los muchos caminos que ya están presentes en Camino. Tenga en cuenta que la ruta a Graphviz puede ser diferente para usted, así que asegúrese de colocar la ruta correcta. La carpeta “bin” debe tener muchos archivos, incluido eldot.exe
solicitud. - Para verificar la instalación, vaya al símbolo del sistema e ingrese:
dot -V
esto debería devolver la versión de Graphviz instalada. Por ejemplo,dot - graphviz version 2.38.0
. Si esto no funciona, ingreseset
y busque la ruta de Graphviz.
- Ir
-
Vaya al símbolo del sistema de Anaconda e ingrese:
pip install graphviz
-
Reinicie Spyder o ejecútelo si aún no está abierto.
-
Ahora, dentro de su secuencia de comandos de Python, agregue
import graphviz
-
A continuación se muestra un ejemplo de cómo crear un gráfico y renderizarlo usando Graphviz de un tutorial de Graphviz
import graphviz dot = graphviz.Digraph(comment='The Round Table') dot.node('A', 'King Arthur') dot.node('B', 'Sir Bedevere the Wise') dot.node('L', 'Sir Lancelot the Brave') dot.edges(['AB', 'AL']) dot.edge('B', 'L', constraint='false') dot.render('FileName', view=True)
-
A continuación se muestra un ejemplo de cómo crear un gráfico a partir de un archivo .gv generado previamente (al menos un punto de partida para la exploración)
from graphviz import Source Source.from_file('file.gv')
Enlaces útiles:
Primeros pasos con Graphviz y Python
Atributos de Graphviz
Guía de puntos
Otra pregunta de StackOverflow
Versiones utilizadas:
Anaconda 3.5 (viene con Spyder)
Graphviz 2.38
Ofrecí una recompensa por la otra pregunta, pero luego me di cuenta de que había una mejor manera:
conda install graphviz
instala los binarios para GraphViz, (por lo que no necesita visitar el sitio web de GraphViz, y presumiblemente se mantendrán actualizados de la manera habitual).conda install python-graphviz
instala la interfaz de Python para GraphViz. (Esto es lo mismo quepip install graphviz
lo que ha llevado a una gran confusión.)
La versión conda de la interfaz de graphviz se ha parcheado para admitir los archivos binarios instalados por conda graphviz
paquete, por lo que para graphviz, esto debería ser todo lo que necesita.
Para pydot
, sin embargo, en Windows, esto no funcionará hasta que incluya estos archivos binarios en su RUTA. Puede hacer esto temporalmente dentro de su script con:
import os
os.environ["PATH"] += os.pathsep + 'PATH_STRING'
ante el mando que llama pydot
.
PATH_STRING es C:Anaconda3envsENV_NAMELibrarybingraphviz
para un entorno conda específico, o C:Anaconda3Librarybingraphviz
para el entorno predeterminado.
(Tuve que instalar un entorno py3.6 para Tensorflow, ya que aún no es compatible con py3.7 y conda install tensorflow
Estuve colgando durante horas, tratando de descubrir cómo degradar cada paquete en mi sistema. (Probablemente otras personas que instalan GraphViz lo hacen por la misma razón).
- Abierto Indicación de anaconda
- Ejecutar-> “conda install python-graphviz” en el indicador de anaconda.
- Después de instalar graphviz, copie el directorio: C:UsersAdminanaconda3Librarybingraphviz
- Abra Panel de controlSistemaConfiguración avanzada del sistema
Variables de entornorutaEditarNuevo
Pegue ese directorio copiado y luego haga clic en Aceptar
Si te gustó nuestro trabajo, tienes el poder dejar un ensayo acerca de qué le añadirías a este post.