Ich baue eine Website, auf der Leute Datenstücke übermitteln, die im Wesentlichen Knoten und Kanten sind, die über PHP in einer MySql-Datenbank gespeichert sind. Ich möchte die Daten auf meiner Webseite durch Netzwerkdiagramme (Knoten und Kanten) darstellen. Die Diagramme müssen interaktiv sein, sodass die Benutzer Knoten ein- und ausblenden können. Wenn ein neuer Knoten angezeigt wird, muss der Graph mit neuen Knoten und Kanten aus der Datenbank aktualisiert werden.
Gibt es eine Software oder Bibliothek, die mir dabei hilft?
Sie können die JavaScript-Bibliothek D3.js (BSD-Lizenz) verwenden, sie enthält eine nette Funktion, um die Daten als Netzwerk darzustellen :
Sie könnten gut daran tun, einen Blick auf Plotly zu werfen - es bietet eine kostenlose Web-Plotting-Schnittstelle, die Sie mit Python (mit matplotlib ), R und MATLAB steuern können, wobei die ersten beiden kostenlos, plattformübergreifend sind und interaktive Diagramme anbieten, die letzten Cross -Plattform nur.
Ein Tipp: Melden Sie sich zuerst an, gehen Sie dann zur Registerkarte „Lernen“ und wählen Sie im Abschnitt des API-Bedienfelds, welches Tool Sie verwenden möchten, „Erste Schritte“ aus, und Ihnen wird eine Seite angezeigt, die so angepasst ist, dass sie Ihre Authentifizierungsdetails enthält.
Einige Beispielgrafiken:
Sie können auch Linkurious.js , ein Javascript-Toolkit, verwenden, um die Entwicklung von Graphvisualisierungs- und Interaktionsanwendungen zu beschleunigen. Es ist kostenlos für Open-Source-Projekte.
Es ermöglicht das Erweitern/Ausblenden einzelner Knoten, wenn Sie diese Interaktionsfunktionen codieren (ich habe es für ein Projekt getan). Diagrammdaten können in Echtzeit aktualisiert werden, die Anzeigeaktualisierung muss jedoch manuell ausgelöst werden.
Haftungsausschluss: Ich arbeite bei Linkurious SAS.
vbikscfb