Ich bin dabei, ein Programm zu schreiben, das dem Benutzer eine Grafik zeigt. Die Grafik ändert sich mit der Zeit (der Benutzer sollte in der Lage sein, mit der rechten Maustaste auf ein Diagrammelement zu klicken und nach weiteren Details zu fragen, wodurch neue Teile des Diagramms angezeigt werden) und der Benutzer könnte Teile des Diagramms herumziehen . Ich würde auch gerne in der Lage sein, das relative Layout bestimmter Teile des Diagramms selbst festzulegen, während ich das Gesamtlayout einer Bibliothek überlasse, aber das ist nicht unbedingt notwendig.Graphviz oder Dynagraph für Graph-Manipulationsprogramm?
Ich versuche zu entscheiden, eine Grafik-Layout-Bibliothek zu verwenden. Soweit ich das beurteilen kann, sind die beiden führenden Kandidaten Graphviz und Dynagraph. Die Dynagraph-Website schlägt vor, dass Graphviz zum Zeichnen statischer Graphen verwendet wird, und dass Dynagraph von Graphviz gespalten wurde und Algorithmen für Graphen enthält, die aktualisiert werden. Es hat ein Beispielprogramm namens Dynasty, das genau das macht, was ich will. Die Graphviz-Site enthält jedoch ein Beispielprogramm namens Lefty, das genau das zu tun scheint, was ich möchte. Graphviz scheint nach den Google- (und SO-) Ergebnissen weit verbreitet zu sein.
Schließlich möchte ich den GUI-Teil in einer Sprache wie Python oder Scheme programmieren, was mich ein wenig zögern lässt, C++ zu benutzen, weil ich verstehe, dass es schwieriger ist, das mit Interpretern zu verbinden.
Also meine Frage ist, welche Bibliothek ist besser für das, was ich versuche zu tun? Haben beide starke und schwache Punkte? Hat einer von ihnen tatsächlich die Entwicklung eingestellt und verlässt gerade seine Website, um mich zu verwirren?
(Ich habe Simple Dynamic Graph Display for C++ und Open source libraries to design directed graphs gesehen, aber ich kann nicht sagen, ob sie über die Graphviz oder Dynagraph Wahl recht wegen Lefty und auch die Sprachenfrage.)
Dies ist wahrscheinlich nicht die Antwort, die Sie suchen, aber haben Sie darüber nachgedacht, eine Webapp zu schreiben? Es gibt eine Fülle von Javascript und Svg-basierten Lösungen. Insbesondere Google hat einige nette APIs: http://code.google.com/apis/ajax/playground/?type=visualization#motion_chart_time_formats – drozzy
Ich wusste nicht über diese. Ich werde mich darum kümmern - danke! –