ENSAI TD 3 – Analyser et visualiser les réseaux avec Cytoscape et Gephi

Gephi et Cytoscape sont deux logiciels open-source et gratuits adaptés à la visualisation de grands graphes. Leurs capacités d’analyse (surtout pour Gephi) sont par contre relativement limitées.

Déroulement du TD

Prise en main de Gephi (version 0.8.2 beta)

Présentation de l’interface : un menu principal, trois fenêtres distinctes (vue d’ensemble, laboratoire de données, prévisualisation) et une vue d’ensemble en 3 colonnes (nœuds, liens et spatialisation ; graphe ; statistiques et filtre)

Options de visualisation – jeu de données Les Miserables.gexf : naviguer dans le graphe (clic droit, molette) ; sélectionner un sommet ; afficher les labels et les faire varier (police, mise en forme, taille).

Mesurer et filtrer : calculer le degré et le degré pondéré, calculer la modularité. La taille des sommets sera fonction du degré pondéré, leur couleur de la classe (modularité) et l’épaisseur des liens variera selon l’intensité du lien. Faire varier les paramètres proposés (couleur, taille, étendue). Sélectionner uniquement les sommets de degré supérieur ou égal à 3 (fenêtre filtre sur la droite).

Préparer l’exportation des résultats (données et image)

Importer ses propres données (reprendre le mini-graphe du TD1) : créer un projet puis aller dans le laboratoire de données, importer les fichiers liens et sommets (format .csv) en cliquant successivement sur Nœuds/Liens et Importer une feuille de calcul. Les noms de colonnes doivent être Source;Target;Weight (optionnel) pour le fichier des liens ; Id-attribut1-attribut2 etc. pour le fichier des sommets. Gephi propose par défaut un typage des variables qu’il peut être nécessaire de modifier.

import_gephi1

Prise en main de Cytoscape

Présentation de l’interface : un menu principal, un volet à droite sur les propriétés, une fenêtre de visualisation et un volet en bas sur les fichiers chargés

Options de visualisation – jeu de données Escherichia coli : naviguer dans le graphe ; sélectionner un sommet ; faire varier les spatialisations et les styles.

Mesurer et filtrer :  Tools > NetworkAnalyser > Network Analysis > Analyse Network. Pour les intégrer à la visualisation, Tools > NetworkAnalyser > Network Analysis > Generate Styles from Parameters… La taille des sommets sera fonction du degré, leur couleur de la proximité (closeness) et l’épaisseur des liens variera selon l’intermédiarité. Extraire les composantes connexes. Sélectionner les sommets de degré supérieur ou égal à 2 et créer le graphe correspondant (onglet Select puis File > New network > From selected nodes…).

Préparer l’exportation des résultats (données et image)

cyto3

Format des données (reprendre le mini-graphe du TD1) : pour le point g, le plus simple est de créer un lien fictif g-g dans le fichier .csv de départ puis de supprimer les boucles après l’importation (Edit > Remote Self-Loops). Pour l’importation des liens, Ctrl + L puis afficher les options de tabulation, la présence ou non de noms de colonnes, l’origine, la destination et le type d’interactions (par défaut pp – protein-protein). Puis importer le fichier des attributs (File > Import > Table > File) et faire la jointure entre les deux fichiers.

cyto1

Cytoscape, logiciel pour l’analyse des graphes (biologiques et autres)

logo du logiciel CytoscapeSi on en croit la page What is Cytoscape?, ce logiciel, open source et multi-plateformes, est dédié à l’analyse des graphes biologiques, et plus précisément à la visualisation des interactions moléculaires. Les réseaux biologiques étant formellement équivalents à tous les autres (sommets, liens et attributs), ce logiciel est évidemment adapté à tous les types de réseaux (simples ou non, bipartites ou one-mode, valués ou booléens), y compris les multigraphes ou les réseaux multiniveaux. Public depuis 2002 et la version 0.8, le logiciel, développé en Amérique du Nord (États-Unis et Canada) mais bénéficiant de soutiens plus larges (Institut Pasteur notamment), en est désormais à la version 2.8.3.

Téléchargement et documentation : http://www.cytoscape.org/

 

Import et export des données

Le format natif du logiciel bénéficie de l’extension .cys. Il s’agit en fait d’un fichier unique généré par le logiciel à partir de différents fichiers sources (.xls, .csv notamment).

L’importation de ses propres jeux de données est relativement simple dans la mesure où il suffit d’un fichier .xls, .txt ou .csv comportant deux colonnes (origine – destination) ou plus (attributs des liens seulement). Il suffit de préciser dans la boîte de dialogue l’origine (Source interaction) et la destination (Target interaction). Le type d’interaction proposé par défaut pp (soit protéine – protéine) convient pour la plupart des réseaux. Une boîte de dialogue permet de spécifier le séparateur de colonnes, la présence ou non de noms de colonnes etc. Pour une fois, la mise en forme des données ne devrait pas être trop chronophage.

Pour importer des attributs relatifs aux sommets, dérouler le menu File > Import > Attribute from Table.

Menu pour l’importation

menu d'importation du logiciel cytoscape

 Importation de tables (.xls, .txt, .csv)

importation de tables dans le logiciel cytoscape

Menu pour l’exportation

menu d'exportation du logiciel cytoscape

La taille des graphes étudiés ne devrait guère poser de problèmes : le manuel indique qu’avec 512 Mo de RAM (souvenirs, souvenirs…), le logiciel permet d’étudier des graphes de 20 000 (avec visualisation) à 70 000 sommets (sans visualisation).

Mesures

De nombreuses mesures, tant locales que globales, sont disponibles. Les plugins installés par défaut (et il y en a un nombre respectable, mais bien d’autres sont disponibles) permettent de recueillir de nombreuses données de façon simultanée. Et si on souhaite étudier tel ou tel type de graphe, on peut installer les plugins disponibles à l’adresse http://chianti.ucsd.edu/cyto_web/plugins/. Les mesures peuvent être exportées en bloc, et les nuages de points (avec ou sans courbe d’ajustement) peuvent être sauvegardés en format image ou vectoriel. Comme tous les logiciels récents, les mesures proposées viennent autant de la Social Network Analysis que de l’approche physicienne des réseaux.

plugins du logiciel cytoscape

 

Mesures disponibles via le plugin Netwok Analysis

mesures proposées par cytoscape

Les modifications (supprimer des boucles par exemple) peuvent être effectuées simultanément sur tous les graphes chargés lors d’une session (Plugins > Networks modification). En cas de manipulation hasardeuse, la commande Undo (Ctrl + Z) permet d’annuler celle-ci.

Les visualisations produites sont modifiables à l’envie, tant pour les liens (couleur, épaisseur, style, droits ou courbes) que pour les sommets ou l’algorithme de visualisation, et les résultats sont esthétiquement très satisfaisants. Il est possible de créer et d’enregistrer ses propres styles visuels afin de les réutiliser ultérieurement. Gadget qui peut être utile : il est possible d’importer une image (format .gif, .jpg ou .png) qui servira d’attribut à un ou plusieurs sommets.créer son style visuel avec Cytoscape

La sélection d’un sommet ou d’un ensemble de sommets se fait par simple clic de souris. Les algorithmes de visualisatipn peuvent être appliqués à l’ensemble du graphe (heureusement) ou à une sélection de sommets seulement. Certains sont originaux : ainsi le Attributes circle layout qui aligne sur un même cercle les sommets ayant le même attribut. Enfin, l’export peut se faire en format image ou vectoriel (.pdf, .svg, .eps, et .png notamment).

Exemple de visualisation avec Cytoscape

 

En conclusion (provisoire)

Les indications données ici ont pour seul objectif de faire connaître l’outil et de faciliter sa prise en main, mais les possibilités du logiciel sont beaucoup plus conséquentes et méritent largement d’être explorées. Même les personnes qui sont (comme moi…) lassées des logiciels clicodromes à produire de la belle image devraient être séduites par les capacités de cet outil. D’autant plus qu’il est possible de l’utiliser en lignes de commande !

 

Ressources, aide et tutoriels

La rubrique d’aide, accessible via l’icône bouée, est complète mais plutôt mal fichue, le texte étant mal formaté et obligeant à lire d’interminables lignes horizontales. Plusieurs tutoriaux sont accessibles sur le wiki http://opentutorials.cgl.ucsf.edu/index.php/Portal:Cytoscape. De nombreux jeux de données (biologiques) se trouvent à l’adresse http://www.pathguide.org/. Ils peuvent être importés directement dans le logiciel via le menu File > Import > Network from Web Services

Pour citer le logiciel : Shannon P, Markiel A, Ozier O, Baliga NS, Wang JT, Ramage D, Amin N, Schwikowski B, Ideker T., Cytoscape: a software environment for integrated models of biomolecular interaction networks. Genome Research, 2003 Nov, 13(11): 2498-504.

 

Note : le logiciel testé est la version 2.8.3 sous environnement Windows 7 – 64 bits.