Est-il interactif d'une bibliothèque graphique pour python

Je suis à la recherche interactive d'une bibliothèque graphique pour Python.

Par "graphique", je voulais dire un ensemble de nœuds reliés par un ensemble de sommets (pas une parcelle de valeurs des axes x-y, ni d'une grille de pixels).

Par "interactif", je voulais dire que je peux les glisser-déposer les nœuds, et j'ai besoin d'être en mesure de cliquer sur les noeuds/vertices et la bibliothèque passer les nœuds/vertices à mes rappels, ce qui peut ajouter/supprimer des nœuds/sommets ou des informations d'affichage (je ne peux pas charger la totalité du graphique au démarrage comme le jeu de données est trop grande/trop complexe; au lieu de cela, je vais charger les tranches de données, selon les entrées de l'utilisateur).

En Python, je voulais dire le langage de programmation Python, la bibliothèque graphique devrait avoir Disponible de liaison. J'ai Python 2.7 et Python 3.1, mais peut revenir à 2.6 si nécessaire. Cette exigence de la langue est parce que le jeu de données, je travaille avec seulement binding Python.

La bibliothèque graphique doit prendre en charge graphe orienté et être en mesure de la disposition de l'nœuds automatiquement. J'ai besoin de mettre des étiquettes sur les noeuds.

De préférence, le layouting algorithme doit placer les nœuds adjacents à proximité les uns des autres. Il doit être capable de gérer à partir de 100 à 1000 nœuds et sur 300-4000 sommets raisonnable dans mes 4 ans d'ordinateur portable (je commence généralement avec près de 100 nœuds, mais le nombre pourrait augmenter en fonction de la saisie de l'utilisateur). De préférence, il doit être une bibliothèque avec pas trop de dépendances (sauf peut-être pour Gnome). L'Open source est préféré.

J'ai déjà écrit un simple prototype de mon programme en utilisant Tkinter, Toile, mais j'ai besoin d'un plus grave d'une bibliothèque graphique pour développer le programme. J'ai regardé graphviz et matplotlib, mais apparemment, ils sont seulement pour travailler avec des graphes statiques et, apparemment, aurait besoin de beaucoup de travail pour faire des manipulations interactives (corrigez-moi si je me trompe, je n'ai regardé brièvement). J'ai aussi essayé de générer le graphe d'un fichier SVG et à l'aide d'Inkscape pour l'afficher, mais il est trop lent et prend trop de mémoire et en raison du grand nombre de sommets, il devient emmêlés.

InformationsquelleAutor Lie Ryan | 2011-04-22