Konstruieren erzwungener gerichteter Graphen aus nur Verknüpfungsdaten

8

Ich bin ein bisschen neu bei d3.js, aber ich habe eine Menge Spaß damit. Bisher habe ich einen kraftgesteuerten Graph implementiert, der vielen der Beispiele und Tutorials sehr nahe kommt.

Direkte Sorge

Wie viele Beispiele habe ich eine JSON-Struktur wie folgt:

%Vor%

Ich denke jedoch, dass es einfacher wäre, meine Datenquellen so zu konstruieren:

%Vor%

Anstatt die Knoten in meinem Graphen explizit zu definieren, werden sie implizit in den Link-Strukturen definiert.

Der Grund

Ich wollte das eventuelle Ziel des Projekts auflisten, falls jemand einen spezifischen Beispielcode oder eine idiomatische Vorgehensweise hätte, von denen ich nichts weiß.

Das Ziel für das Projekt wäre schließlich ein Graph, der in Echtzeit aktualisiert wird. Das Backend wird entwickelt und unterliegt einigen Änderungen und Überarbeitungen.

Im Moment stelle ich mir vor, einen Update-JSON-Feed alle X Sekunden herunterzufahren und die Struktur dieses Graphen mit den neuen Informationen zu aktualisieren. Der gezogene Feed würde nur die aktualisierten Strukturen des Graphen enthalten. Daher müsste das Skript alle bereits gezogenen Knoten und Links beibehalten und bei Bedarf neue hinzufügen.

Danke!

Ich entschuldige mich, wenn das schon einmal gefragt wurde. Ich habe ein wenig gesucht und nichts gefunden. Fühlen Sie sich frei, mich zu beleidigen und beschimpfen, wenn ich es verpasst habe.

    
user1524220 13.07.2012, 20:53
quelle

2 Antworten

4

Ich musste das ein paar Mal machen. Der einfachste Ansatz, den ich gefunden habe, besteht darin, die Menge der Knotenbasis einfach aus der Liste der Verbindungen zu berechnen und sie dann in ein Array umzuwandeln, das das Kraftdiagramm verwenden kann:

%Vor%     
fozziethebeat 03.09.2012, 03:02
quelle
4

Ich habe genau das in dem Beispiel " D3 Based Force Directed Radial Graph " gemacht. Ich mache das, weil ich verstehen möchte, wie die Daten intern verwendet werden, unabhängig von Strukturen wie JSON und CSV, die später immer wieder in Schichten eingefügt werden können.

Wie auch immer, ich hoffe, das Beispiel hilft dir.

Mein Bestes,

Frank

    
Information Technology 29.07.2012 20:30
quelle

Tags und Links