2009-03-17 9 views
53

Esiste un'alternativa Java Open Source a GraphViz? Sono a conoscenza dell'esistenza di Grappa che fondamentalmente avvolge l'interfaccia Graph in GraphViz come JavaAPI. Tuttavia, il layout è ancora eseguito dai binari GraphViz.Reimplementation Java puro di GraphViz?

Sto cercando una libreria open source pure-java che fornisca le stesse funzioni e algoritmi di layout di GraphViz.

+1

'Tuttavia, le versioni correnti del software sono ora concesse in licenza su base open source solo in Eclipse Public License (EPL). '- http://www.graphviz.org/Download.php – Stephen

+1

Guardando i documenti di origine è valsa la pena che http://www.graphviz.org/Theory.php – Stephen

risposta

18

Si può dare un'occhiata a JUNG (Java Universal Network/Graph Framework) che ha funzioni di visualizzazione e analisi. È open source.

+2

stia usando JUNG ora per un po', dopo aver provato Gephi e alcuni altri, sembra funzionare molto bene, anche se ho già raggiunto il punto in cui dovrò creare il mio algoritmo di layout per ottenere quello che voglio. – davenpcj

6

yFiles sembra fornire tutto questo, ma non è gratuito né economico. Ma ancora una volta sembra essere un prodotto molto professionale (non l'ho usato, tranne in yEd, che può essere utilizzato gratuitamente).

8

Si potrebbe guardare JGraph anche se non l'ho mai usato quindi non posso commentare ora si confronta con GraphViz.

4

Immagino che ZGRViewer sia quello che vuoi. Mi piacciono molto ZGRViewer e AJaPaD.

+1

Il layout è ancora fatto dai binari di graphviz. – schmmd

+0

Questo è davvero un bel visualizzatore. Non è stato necessario quasi nessuno sforzo per farlo funzionare sul mio Windows 7. Speriamo di poter hackerare il suo codice sorgente per integrarlo con la mia applicazione Java. –

18

È interessante notare che il progetto Eclipse ha uno SWT/JFace componente/quadro in grado di visualizzare e di generare (import/export) formato 'punto' di Graphviz, in puro Java:

ZEST (home page & download links)

Vedere http://wiki.eclipse.org/Graphviz_DOT_as_a_DSL_for_Zest per l'uso esempi.

Sebbene ZEST sia pubblicizzato come plug-in Eclipse, sembra che le API di manipolazione DOT possano essere utilizzate standalone e esterne a un'installazione Eclipse.

Per chiarire, la funzionalità DOT fa parte della funzionalità ZEST 2, che a sua volta è un sottocomponente del progetto GEF4.

Acclamazioni

Rich

Update (maggio 2017)https://github.com/nidi3/graphviz-java

+3

Dalle domande frequenti su Zest che fa parte di GEF per eclipse: È possibile sviluppare un'applicazione GEF autonoma senza utilizzare la piattaforma Eclipse? La risposta ufficiale è No, questo non è supportato. – davenpcj

+0

Posso usarlo comunque, le caratteristiche sembrano eccellenti. – davenpcj

+0

Giusto per chiarire, non stavo suggerendo che non hai bisogno di Eclipse framework/API, solo che puoi codificare la tua applicazione autonoma basata su DOT, indipendentemente dal plugin ZEST Eclipse. –

1

ho lavorato con yFiles circa quattro anni fa, ed è stato eccellente. È costoso (anche se meno di JGraph, a quanto pare) ma lavoro in un laboratorio di ricerca CS e ho avuto accesso ai loro generosi prezzi accademici.

+1

Per chiarire, JGraph è concesso in licenza BSD, non costa nulla. – David