Ich bin ein Neuling in Visualisierungen. Heutzutage stoße ich regelmäßig auf grafische Daten, die ich visualisieren muss. Unterschiedliche Datentypen erfordern jedoch unterschiedliche Layouts. Und da ich nicht genug Erfahrung habe, sind mir die verschiedenen Graph-Layout-Algorithmen nicht bekannt.
Ich hätte gerne eine Liste von Graph-Layout-Algorithmen mit Pseudocode oder Code (in jeder Sprache) Ich kann mich bei der Implementierung eines Diagramms darauf beziehen.
Kommentare
- Ich denke, StackOverflow gibt Ihnen bessere Antworten.
Antwort
Sie können mit Wikipedia beginnen, dem R-Paket igraph
verfügt über mehrere Algorithmen, die möglicherweise nützliche Hinweise / Referenzen liefern, einschließlich layout.random, layout.circle, layout.sphere, layout.fruchterman.reingold, layout.kamada.kawai, layout.spring, layout .reingold.tilford, layout.fruchterman.reingold.grid, layout.lgl, layout.svd und layout.norm
Antwort
Wenn Sie sich für die Algorithmen selbst interessieren und nicht für Software, die dies nur tut (von denen es viele gibt), lesen Sie einige der Artikel von Yifan Hu , die eine gute Einführung in bestimmte Arten von Algorithmen geben (nicht erschöpfend).
Antwort
Gibson, Faith und Vickers haben eine paper vergleicht verschiedene relationale Diagrammlayouttechniken und analysiert, wo sie sich auszeichnen und wo sie ins Stocken geraten. Sie enthalten zwar keinen Pseudocode, bieten jedoch einen guten Überblick, mit dem Sie nach bestimmten Algorithmen suchen können.
Kommentare
- Der Link hier Links zu dieser Frage (ich denke, der Autor hat einen Fehler gemacht) – das Papier aus dem Jahr 2013 finden Sie hier
Antwort
- Algorithmus für federelektrische kraftgerichtete Platzierung, wie in Effiziente und qualitativ hochwertige kraftgerichtete Diagrammzeichnung von Yifan Hu erläutert.
- Buchheim-Baumzeichnung
- Feder- / Abstoßungsmodell
- Spannungsmajorisierung
- Spektrallayout-Algorithmus
und viele mehr mit Julia code hier
Ich versuche, einige davon mit Java zu schreiben. Es gibt ein Papier mit dem Titel Graph Drawing and Analysis Library und Seine domänenspezifische Sprache für die Layoutspezifikationen von Diagrammen von Renata Vaderna, Željko Vuković, Igor Dejanović und Gordana Milosavljević, in denen th Sie vergleichen ihre Bibliothek mit anderen Bibliotheken wie JUNG .
Dort Es ist genug Code vorhanden, um Ihnen den Einstieg zu erleichtern.