Tulip est un environnement de visualisation d’informations dédié à l’analyse et à la visualisation de données relationnelles. Tulip fournit aux développeurs une bibliothèque complète, prenant en charge la conception d’applications de visualisation interactive de données relationnelles qui peut être taillée pour les problèmes qu’il ou elle adresse.
Après un an de développement, plus de 2 000 commits, environ 300 bogues et demandes de fonctionnalités fermés, deux versions candidates et énormément de retours des utilisateurs, nous sommes fiers de vous présenter Tulip 4. Ceci est la première de la nouvelle lignée 4.x, qui apporte une nouvelle interface graphique, beaucoup d’améliorations de vitesse et de stabilité, ainsi qu’un gros ravalement de l’API et de sa documentation.
La suite de cette dépêche contient la traduction de la dépêche officielle, qui se lit comme un guide d’introduction à la nouvelle interface utilisateur de Tulip.
Sommaire
Une interface utilisateur repensée
Faisons ensemble un tour de la nouvelle interface, pour voir comment elle peut simplifier l’analyse de données.
Le Tulip Agent
Tulip 4 a été pensé pour simplifier le multi‐tâche autant que possible, et c’est dans ce but que le Tulip Agent a été créé.
Les dernières versions de Tulip 3 ont introduit le concept de perspectives, pour permettre la création d’applications centrées sur une tâche. Tulip 4 pousse ce concept plus loin encore, où une perspective est une application indépendante qui peut être lancée grâce au Tulip Agent.
Le Tulip Agent est un concentrateur où des greffons peuvent être installés, désinstallés ou mis à jour. On peut facilement naviguer parmi les greffons, ainsi qu’effectuer des recherches. Mais c’est aussi un endroit où l’on peut voir les dernières nouvelles et images de Tulip, grâce au lecteur de flux RSS intégré.
La nouvelle perspective Tulip
Tulip 3 a été la victime de sa propre évolution. Au fur et à mesure que des options étaient ajoutées, elles poussaient les anciennes dans des onglets et des menus, cachant une grande partie des possibilités de Tulip aux nouveaux venus.
Tulip 4 est un nouveau départ pour l’interface graphique, et propose une manière intuitive de visualiser et manipuler les graphes.
Voici ce à quoi ressemble la nouvelle perspective au démarrage (pour ceux d’entre vous reconnaissant une petite touche à la QtCreator, oui nous nous en sommes inspirés) :
Regardons chaque composant rapidement avant d’aller plus en profondeur avec un graphe chargé
Le composant qui ressort le plus est le workspace sur la droite. Il contient les vues sur les graphes, et diffère de l’interface multi‐document de Tulip 3 de par ses arrangements de vues fixés, entre lesquels on peut facilement alterner. Cela laisse les données aussi visibles que possible, en ne laissant pas d’espace vide à l’écran.
Sur la gauche on voit deux barres, l’une fixée, contenant des raccourcis vers des opérations communes comme annuler, rétablir, importer un graphe, et un bouton ramenant la page plugins du Tulip Agent.
L’autre barre contient les algorithmes et la hiérarchie des graphes. Cette manière de présenter les algorithmes offre une grande visibilité sur les opérations possibles, et permet de chercher aisément parmi eux. Ceci est devenu nécessaire, du fait du grand nombre d’algorithmes disponibles (près de 100, dans l’installation de base).
À présent, importons et visualisons des données
Premièrement, l’on peut soit passer par le menu File → Open, qui ouvre un sélecteur de fichiers standard permettant l’ouverture de tout fichier dont le format est pris en charge par Tulip. On peut ainsi ouvrir facilement un fichier tlp (Tulip), dot (graphviz) ou même net (Pajek).
Pour les importations qui nécessitent plus de données, comme le format DIMACS qui est décomposé en deux fichiers, il faut utiliser le bouton Import dans la barre de gauche.
Ce wizard regroupe tous les formats pris en charge par Tulip, de même que des générateurs de graphes (e.g. Complete General Graph dans la capture d’écran).
Tulip 4 possède tous les outils de Tulip 3 et plus. Pour analyser nos données, commençons par les visualiser.
Pour ouvrir une vue sur votre graphe, il y a plusieurs manières. Soit en double‐cliquant sur le graphe, soit en utilisant le bouton Add Panel sous la hiérarchie de graphes. Lorsque Tulip est lancé sans graphe, un bouton se trouve aussi au centre du workspace pour faire cela.
Maintenant, on peut sélectionner la vue que l’on veut ouvrir
L’une des fonctionnalités les plus intéressantes de ce wizard est sa page suivante. Elle offre la possibilité de configurer la vue avant le premier dessin. Cela permet d’arriver plus rapidement à un premier dessin des données, par exemple en désactivant les labels sur un graphe de plusieurs millions d’éléments.
Pour modifier la configuration d’une vue créée, cette même page de configuration se trouve dans le coin supérieur droit de la vue. Après un simple clic sur ce bouton, la page de configuration s’affiche.
Chaque vue a sa propre barre d’interacteurs défilant lorsque tous les interacteurs ne peuvent pas être dessinés à l’écran. À la droite de cette barre se trouve un champ de sélection de sous‐graphe pour rapidement visualiser une autre partie de la hiérarchie de graphes.
Enfin, il y a une poignée pour glisser‐déposer la vue et échanger sa position avec une autre, et un bouton de fermeture de la vue.
La vue Nœud Liens, qui est la vue la plus utilisée de Tulip, a vu un grand nombre d’améliorations, et quelques raccourcis on été ajoutés pour des opérations courantes.
Son panneau de configuration dispose à présent d’un bouton global pour appliquer les modifications, de manière à éviter les nombreux re‐calculs lorsque l’on modifie le rendu.
La nouvelle barre d’accès rapide au bas de la vue offre des raccourcis vers les actions les plus courantes, comme prendre une capture de la vue, changer la couleur de fond, etc.
Cette barre contient aussi une nouvelle fonctionnalité de filtre des entités selon une métrique. Ces petits panneaux se lisent comme une légende, offrant une idée de la répartition des entités selon leur couleur ou taille. Lorsque l’on clique sur cette légende, deux poignées apparaissent à ses extrémités, permettant de filtrer les portions d’entités qui nous intéressent moins.
La barre d’algorithmes sur la gauche permet de rapidement trouver et lancer les algorithmes que l’on cherche. Ceux que l’on utilise le plus peuvent être marqués comme favoris, pour un accès plus rapide. Un algorithme peut être lancé soit en cliquant sur le bouton Lecture vert (ce qui l’applique sur le graphe en gras dans la hiérarchie des graphes), soit en le glissant‐déposant sur la vue contenant le graphe.
Les graphes peuvent être glissés‐déposés vers une vue pour être affichés.
Les changements sous le capot
Tulip 4 a vu un grand nombre de modifications sous le capot pour en simplifier l’utilisation.
En premier lieu, la documentation a été récrite, et apporte des informations essentielles sur l’utilisation de la bibliothèque Tulip.
Le système de greffons a subi un ravalement important pour le rendre plus facile d’utilisation, notamment dans les cas où l’on souhaite obtenir des informations sur les greffons existants.
Les interfaces de programmation pour les vues, interacteurs et perspectives ont été complètement revues pour coller à la nouvelle vision de ces objets.
Le moteur de rendu a été revu pour permettre l’écriture de code de rendu personnalisé tout en profitant facilement de la puissance de Tulip, y compris son système de sélection de scène, caméras et couches.
Comme à l’accoutumée, des binaires sont disponibles pour Windows et Mac OS X, et des paquets sources sont disponibles pour ceux qui le souhaitent.
Aller plus loin
- Dépêche originale sur le site officiel (1029 clics)
- Téléchargement de la version Windows (96 clics)
- Téléchargement de la version Mac OS X (49 clics)
- Téléchargement des sources Linux (43 clics)
- Galerie d'exemples de visualisation (288 clics)
# Snapshot
Posté par Sytoka Modon (site web personnel) . Évalué à 10.
C'est quoi ces copies d'écran ? Je rêve ou c'est l'environnement fenêtre ! Je ne trouve pas qu'elle apporte quoi que ce soit à la dépêche car franchement, on ne voit pas ce qu'elles apportent. D'ailleurs, à vrai dire, j'ai pas bien compris à quoi servait Tulip exactement. Il n'y aurait pas un cas précis d'utilisation ?
Sinon, j'aurais aimé le lien vers le tar.gz en plus des versions MAC et Windows, c'est quand même DLFP ici ;-)
[^] # Re: Snapshot
Posté par gilles renault (site web personnel, Mastodon) . Évalué à 1.
Plutôt d'accord avec toi! Je ne me formalise pas sur les captures d'écran, mais pas de lien vers les sources…
Aussi d'accord sur le fait que je ne sais pas vraiment à quoi ça sert
Un petit exemple de visualisation nous aurait sans doute éclairé.
Après, la critique est facile, c'est vrai, je salut l'initiative de la dépêche.
[^] # Re: Snapshot
Posté par Auliyaa . Évalué à 10.
Bonjour, je suis développeur au sein de l'équipe Tulip.
Tulip est un logiciel permettant de visualiser des jeux de données hétéroclites. Le principe est de pouvoir partir à partir de n'importe quel format de données (CSV, dot, SQL, etc) au moyen des méthodes déjà existantes dans Tulip ou via l'écriture d'un greffon. Ces données sont ensuite modélisées en mémoire sous forme de graphes . On obtient ainsi un format de données unique sur lequel nous allons pouvoir appliquer un ensemble de visualisations et avec lequel nous allons pouvoir calculer un ensemble de métriques.
Le but du jeu est de fournir à l'utilisateur une vue de ces données pertinente en terme d'analyse interactive.
Une galerie de visualisations est disponibles sur le site officiel
En ce qui concerne le lien vers les sources Linux, celui-ci manque dans ce billet mais est présent dans le billet original. Je me permet de le poster ici en attendant une édition de ce billet: Sources Linux
[^] # Re: Snapshot
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
Est-ce que vous avez des exemples d'utilisation dans l'industrie ou la gestion?
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Snapshot
Posté par Auliyaa . Évalué à 2.
Les projets autour de Tulip s'orientent principalement autour du domaine de la recherche (notamment en Bio-informatique avec le projet Systrip ou en théorie des graphes avec le projet Porgy)
Nous avons pu mettre en place un partenariat industriel avec le groupe Thalès pour de l'analyse de réseaux sociaux.
D'autres collaborations sont à venir avec la création d'une entreprise autour du projet Tulip dont le but sera de proposer des applications du logiciel dans un cadre purement industriel
[^] # Re: Snapshot
Posté par rahan . Évalué à 1.
Miam ! C'est la CNIL qui va être contente…
[^] # Re: Snapshot
Posté par Auliyaa . Évalué à 2.
Les données utilisées par ce projet sont extraites depuis des API publiques :)
[^] # Re: Snapshot
Posté par Larry Cow . Évalué à 3.
Si je m'abuse, ça ne change pas grand chose.
[^] # Re: Snapshot
Posté par rahan . Évalué à 1.
Merci. Je ne voulais pas en rajouter une couche mais je suis d'accord avec toi. (et je crois que la CNIL ou les utilisateurs des-dits services seraient du même avis)
Quand on sait que Thales est un marchand d'armes, on voit très bien à quoi peuvent servir ce genre de "partenariats" sous des régimes un peu plus autoritaires (cherchez "Amesys" dans Google si vous voulez des exemples).
[^] # Re: Snapshot
Posté par barmic . Évalué à 3.
Je crois que ce qui défini le cadre privé d'un point de vu légale c'est le fait de ne pas le divulguer (ou de le faire de manière limité). Donc à moins de prouvé que le réseau social que tu utilise à présenté des données contre ta volonté, je ne crois pas que tu puisse porter plainte.
Mais pour constituer ce type de fichier, il faut faire une déclaration à la CNIL. Mais je crois qu'il ne risque pas grand chose si les données sont anonymisées.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Snapshot
Posté par devnewton 🍺 (site web personnel) . Évalué à 4.
Ok merci, car j'ai l'impression que Tulip est un outil très puissant, mais je ne vois pas à quoi l'appliquer :-)
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Snapshot
Posté par gilles renault (site web personnel, Mastodon) . Évalué à 1.
Et bien voilà! Merci.
[^] # Re: Snapshot
Posté par Sytoka Modon (site web personnel) . Évalué à 2.
Merci pour les explications et les liens. A savoir, quand on fait une dépêche, c'est mieux de remettre tous les liens. D'ailleurs, faute de temps car je sais qu'a chaque fois, cela me prends une soirée, j'en fait quasiment plus ;-(
A noter aussi que tout cela me semble codé en C++. Je pense que donner le langage principal est aussi important car certain langage sont plus ou moins apprécié (ici)… J'ai vu qu'il y avait un binding python ? Est-il complet ?
Peut'on utiliser Tulip en ligne de commande dans du batch comme graphviz (en effet, graphviz me semble le logiciel le plus connu se rapprochant). As t'on une dépendance envers X pour les commandes en batch ? Par exemple, imagemagick a une dépendance envers X à cause de la commande display car pour convert, cela ne me semble pas nécessaire. Du coup, c'est dommage de ne pas l'avoir coupé en deux (j'aime pas mettre la Xlib sur un serveur web apache).
[^] # Re: Snapshot
Posté par packadal . Évalué à 1.
Tulip est décomposé en plusieur parties;
la librairie principale, la librairie openGL, la librairie Qt, le logiciel a proprement parler et les bindings python.
Les bindings sont concentrés sur la librairie principale, et la couvrent quasi-intégralement.
Tulip n'est pas utilisable en ligne de commande, mais il est possible d'écrire un script python effectuant une tache simple à intégrer dans un workflow CLI.
[^] # Re: Snapshot
Posté par LeMarsu . Évalué à 5.
Attention, si je puis me faire mettre, mais "snapshot" ne veux pas dire "capture d'écran", mais "instantané, cliché". Le mot le plus approprié, pour parler de "capture d'écran" est "screenshot".
Le snapshot, en informatique, représente rarement une image, mais plus les sources d'un projet à un moment donné. Par exemple, les nighty-builds (paquet compilé à partir des dernières sources (stable ou pas) d'un projet durant la nuit).
LeMarsu, en passant.
# Assembleur informatique
Posté par Mimoza . Évalué à -1.
Le nom m'a tout de suite fait penser à l'assembleur informatique du temps du Lycée ^-^'
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.