Frage

Ich habe eine große gerichtete azyklische Graph, dass ich in einem Bitmap-Bild sichtbar zu machen möchte.

Im Idealfall würde Ich mag alle Wurzelknoten am oberen Rand des Bildes haben, und alle die Blattknoten an der Unterseite, das heißt, die Graphen sind alle Kanten zeigen in einer Richtung nach unten.

Gibt es einen guten Algorithmus für die Arbeit, die Koordinaten aller Knoten heraus, dass diese Bedingungen erfüllt und wird eine gute Visualisierung produzieren?

War es hilfreich?

Lösung

Ich rate Ihnen verwenden Gephi .

Dieses weiche ist in der Lage, alles zu tun, sollten Sie, besonders Graph-Layouts!

Andere Tipps

Sehen Sie sich die Graphviz Software-Sammlung. Es enthält mehrere Programme Diagramme zu machen.

Der einfachste Weg ist Ihr Diagramm auf Platte zu schreiben, in einem der Graphviz Text-Formate. Dann führen Sie eines der Programme machen, und laden Sie das resultierende Bild in Ihre Anwendung.

Bayesian Networks haben ähnliche Anforderungen. Sie könnten für Algorithmen für Bayes-Netzwerke suchen. Dieses Papier zum Beispiel hilfreich sein.

Sie können in geschichteter Graphen Zeichnung interessiert sein (auch als „hierarchisches Zeichnen von Graphen“ bekannt oder „Sugiyama-Stil Zeichnen von Graphen“). Der Algorithmus ist zu lang, um hier zu beschreiben, aber Google-Suchanfragen viele zuverlässige Erklärungen bringen.

Sie können versuchen, diese Go-Paket Ich schrieb: https://github.com/h8liu / e8tools / Baum / Master / dagvis

Ein Beispiel: http://lonnie.io/gostd/dagvis/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top