34 votes

Outils de visualisation pour les grands graphiques

Je voudrais créer un graphe (ensemble de sommets reliés par des arêtes) et je cherche des outils ou des bibliothèques qui peuvent m'aider.

Le graphe est composé d'au moins 1000 nœuds. Même si c'est un peu ambitieux, j'aimerais en créer un qui compte 60 000 nœuds.

Il est évident que le graphique qui en résulte se veut plus artistique que fonctionnel. Par exemple, j'ai vu des graphiques illustrant un énorme graphe d'adresses IP (ce serait pratique si je pouvais me rappeler où je l'ai vu).

Avez-vous des suggestions de logiciels, de bibliothèques ou de cadres de travail ?

23voto

Ollie Glass Points 4362

Essayez Gephi . Sa nouvelle OpenOrd Le plugin de mise en page s'adapte à des millions de nœuds. enter image description here

18voto

bltxd Points 4408

Essayez Graphviz Il s'agit d'une boîte à outils portable parfaitement adaptée à la tâche que vous décrivez.

Il fournit un tas d'outils en ligne de commande parmi lesquels un programme nommé dot. Vous l'alimentez avec une simple description :

# This is MyGraph.dot
digraph MyGraph {
  Node1 -> Node2;
  Node2 -> Node3;
  Node3 -> Node1;
};

Alors cours :

dot -Tpng -o MyGraph.png MyGraph.dot

Et vous obtenez une image. La mise en page est automatique.

Cet outil est également utilisé par certains freewares que vous connaissez peut-être déjà, tels que :

  • Doxygen un générateur de documentation pour le code C/C++ (et autres).
  • Caméléon 2 un IDE pour OCaml.
  • Ragel un compilateur de machines à états.
  • La bibliothèque de graphes disponible dans Boost .

11voto

Scott Points 452

Je pense que pour les très grandes mises en page de graphiques, vous trouverez que les bibliothèques à usage général comme GraphViz ne seront pas à la hauteur. C'est parce que les algorithmes de mise en page qu'ils utilisent, bien qu'ils soient appropriés pour les petits graphes, échouent lamentablement une fois que votre graphe devient assez grand. Ce dont vous avez besoin, c'est d'un algorithme de mise en page plus "sale". Ces liens peuvent peut-être vous aider

et enfin, surtout :

8voto

cfisher Points 4915

Consultez " TextArc ". Il s'agit d'une représentation visuelle d'un concordance et peut afficher des milliers d'objets à l'écran en utilisant un triple tampon (si je me souviens bien).

alt text

Walrus semble créer de très beaux résultats (en utilisant l'espace hyperbolique) : alt text

5voto

Jasper Bekkers Points 4949

http://blog.gungfu.de/uploads/internetStructure.jpg

Cette image ? Vous pourriez utiliser GraphViz, pour lequel vous ne générez rien de plus qu'un simple fichier texte, et le faire fonctionner pendant la nuit.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X