2015-12-11 38 views
7

Sto provando a creare alcuni grafici Networkx Graphviz.Ubuntu graphviz 'sfdp' non funziona

Dopo l'esecuzione: pos = nx.graphviz_layout(G, prog = 'sfdp'). È verificato un errore, dicendo:

Error: remove_overlap: Graphviz not built with triangulation library 

Dopo qualche Google ricerche ho scoperto che GTS è il problema. Bug report dichiarato:

The Graphviz package is built --without-gts. This is bad news for sfdp, which complains “Error: remove_overlap: Graphviz not built with triangulation library” and fails to produce the beautiful output it creates when compiled --with-gts

Guardando commenti (su segnalazione di bug), qualcuno ha detto che le fonti a monte per Graphviz sono mantenuti a link, ma non riuscivo a trovare le nuove versioni da scaricare.

Sulla confezione list Ho l'ultima (2,36 per fidata).

Chiunque abbia problemi con sfdp?

Qualsiasi aiuto sarà molto apprezzato!

+1

Stesso problema, ancora nessuna soluzione. –

+0

@PaulSmith Ho rinunciato molto tempo fa: D – VlS

risposta

1

ho potrebbe averlo lavorare per Ubuntu 14.04, YMMV

Scarica i seguenti pacchetti graphviz direttamente da https://packages.debian.org/search?keywords=graphviz

  • graphviz_2.38.0-13_amd64.deb
  • libcgraph6_2.38.0-13_amd64. deb
  • libgvc6_2.38.0-13_amd64.deb
  • libgvpr2_2.38.0-13_amd64.deb
  • libltdl7_2.4.6-0.1_amd64.deb
  • pitone pygraphviz_1.3.1-1_amd64.deb

Ho usato versione 2.38.0-13 dalla (test) gruppo stirata. Sarà necessario rimuovere la libltdl7 32bit se presente:

sudo apt-get remove libltdl7:i386 

installare i pacchetti direttamente con

sudo dpkg -i graphviz_2.38.0-13_amd64.deb  
sudo dpkg -i libcgraph6_2.38.0-13_amd64.deb libgvc6_2.38.0-13_amd64.deb libgvpr2_2.38.0-13_amd64.deb libltdl7_2.4.6-0.1_amd64.deb 

Ci si può aspettare errori di dipendenza. Li ho chiarito con:

sudo apt-get install -f 

E poi reinstallare

sudo dpkg -i graphviz_2.38.0-13_amd64.deb 
sudo dpkg -i python-pygraphviz_1.3.1-1_amd64.deb 

L'errore non è più appeares anche se mi sarebbe difficile messi a dire i grafici sono meglio.

+0

non funziona .. :( – lizlalala

1

So che la domanda è per Ubuntu, ma nel caso in cui qualcuno sta avendo lo stesso problema su MacOS utilizzando homebrew i seguenti ha lavorato per me:

brew reinstall graphviz --with-gts 
4

Per gli utenti di Ubuntu, ecco come Ho ottenuto grapviz per lavorare su 16.04, compilando graphviz-2.40.1 dalla sorgente:

In un primo passaggio, è necessario installare GTS, poiché graphviz cerca lo gts.pc file.

running apt-file search gts.pc me impara devo installare 'libgts-dev':

sudo apt install libgts-dev 

prossima make pkg-config consapevoli dei file:

pkg-config --libs gts 

pkg-config --cflags gts 

corsa configure per linkare la libreria GTS:

./configure --with-gts --prefix ~ 
make 
make install 

SFDP non genera l'errore 'errore: remove_overlap: Graphviz non costruito con libreria di triangolazione '

I codici della riga di comando per la configurazione pkg modificata dalla risposta this.

+1

Download 'graphviz-2.40.1.tar.gz' da [qui] (http://www.graphviz.org/Download_source.php) e ha eseguito la procedura, e funziona - una specie. Posso usare alcuni comandi ('punto',' fdp'), ma non altri ('sfdp',' neato'). Qualche idea su cosa sta succedendo qui? Utilizzo di Ubuntu 16.04.2) ' – JoeRocc

+0

'/usr/bin/sfdp: Nessun file o directory 'è il problema, btw. Mentre gli altri comandi funzionano come normali. [Questo post] (https: //bugs.debian .org/cgi-bin/bugreport.cgi? bug = 853468) sembra essere d'accordo con la suddetta procedura di risposta (1. installa 'libgts-dev', 2. aggiungi' --with-gts' alla configurazione). c'è lo stesso problema di me? – JoeRocc

+0

Ok, ho capito che funziona (nessun problema ancora, almeno) - per gli altri che hanno problemi simili, ho scritto alcune informazioni qui: https://github.com/ellson/gr aphviz/issues/1237 Anche se probabilmente era solo qualcosa che ho sbagliato. Grazie, Sam! – JoeRocc