Découverte :
iPath partout !

Depuis quelques mois j'utilise un outil nommé iPath2.0 qui peut être très utile pour certains.

Logo d'iPath2.0

Logo officiel d'iPath2.0

Présentation de l'outil

iPath2.0 est un outil en ligne, accessible à l'adresse http://pathways.embl.de/iPath2.cgi. Son principal intérêt est la visualisation et l'analyse de voies métabolique.Il se compose de trois cartes. La première, celle que j'utilise le plus et qui sera détaillée ici, représente les grandes voies métaboliques connues et annotées, comme le métabolisme des lipides, le métabolisme des acides aminés, etc. Sur cette carte, les nœuds correspondent à des composés chimiques et les arcs à des séries de réactions biochimiques.

Exemple d'image du logiciel

Aperçu du logiciel

La seconde carte est axée sur une sélection de voies de régulations et de modules fonctionnels d'intérêt, comme "Réplication et réparation de l'ADN", "Mobilité cellulaire", 'Transport membranaire", etc. La dernière carte est une représentation de la synthèse des métabolites secondaires.

Toutes ces informations sont basées sur KEGG (Kyoto Encyclopedia of Genes and Genomes) et plus particulièrement sur les voies métaboliques annotées dans KEGG. Ainsi, en cliquant sur un arc, on accède directement à de nombreuses informations venant de KEGG : l'identifiant KEGG de la voie métabolique sélectionnée et son nom, les KOs (le système de "KEGG Orthology" consiste en une collection de groupes orthologues manuellement définie. Ces groupes sont hiérarchisé suivant les voies métaboliques de KEGG.), modules et réactions enzymatiques KEGG qui y sont liés, les groupes orthologues d'eggNOG, etc.

Informations des arcs

Exemple d'informations accessibles en cliquant sur un arc.

En cliquant sur un nœud, on accède à l'identifiant KEGG du composé chimique, son nom, sa masse, la représentation de sa structure et plusieurs liens vers des bases de données externes (PubChem, ChEBI…).

Informations des noeuds

Exemple d'informations accessibles en cliquant sur un noeud.

Toutes ces données sont des liens redirigeant vers la page concernée, et donc bien que basé sur KEGG, iPath2.0 permet un lien rapide entre plusieurs autres bases de données.

Personnaliser la carte

Bon, tout cela est très bien, mais l'intérêt est de pouvoir y entrer ses données. Voici donc comment faire. IPath2.0 est équipé d'un petit panneau latéral “Customize” et c'est ici que tout va se passer. Dans ce menu, on peut ajouter une liste d'identifiants provenant de vos données annotées. iPath2.0 accepte plusieurs types d'identifiants : KEGG Pathways, KEGG Compounds, KEGG KOs, STRING proteins, KEGG proteins; COGs/eggNOGG OGs, Enzyme EC numbers, Uniprot IDs/ACCs, IPI IDs et NCBI GI IDs

Après avoir saisi vos données, iPath2.0 vous affiche les arcs et nœuds dans lesquels vos identifiants sont impliqués. Pour l'exemple, j'ai inséré les KO K00021 et K00042 (K02000 n'étant pas présent).

Exemple de résultats

Résultat d'iPath2.0 sur les identifiants K00021 et K00042.

On voit que K00042 est impliqué dans la voie métabolique dite « Glyoxylate and dicarboxylate metabolism », ou en bon français : « métabolisme de l'oxoacétate et du dicarboxylate ». Il est possible dans le panneau latéral de configurer de nombreuses choses comme la couleur de fond, la couleur des arcs non sélectionnés, etc. Mais surtout, il est très facile de colorer et régler la taille des arcs et nœuds où nos données apparaissent.

Formater ses données

Pour l'exemple, je vais imaginer deux expériences A et B. A est la condition normale et B, la condition testée. Après les manipulations, on extrait les données et on les annote. On obtient alors deux listes de gènes annotés. Chaque gène est associé à une valeur d'expression. On ne garde que les gènes significativement différentiellement exprimés dans B par rapport à A, c'est à dire les gènes dont l'expression varie fortement entre les deux conditions.

Dans notre exemple, nous avons 20 gènes qui ressortent dont 5 sous-exprimés dans B et 15 sur-exprimés dans B.

Identifiant du gène Valeur de l'expression
noc:Noc_2806 -5
ddi:DDB_G0269772 10
yli:YALI0F02695g -12
ath:AT2G4375 25
ath:AT2G43080 8
tne:Tneu_0239 4
ncr:NCU00578 -22
ath:AT4G19710 -10
ath:AT5G13280 20
yen:YE3075 11
syn:slr1369 4
mar:MAE_31900 14
syc:syc0836_d 8
ath:AT1G63770 7
sfx:S3110 -24
ath:AT1G23190 12
osa:4334554 6
syf:Synpcc7942_1983 17
osa:4327178 3
npu:Npun_R4096 8

Il y a trois caractéristiques sur lesquelles on peut jouer dans iPath2.0 : la couleur des arcs, leur taille et leur opacité. Il peut être intéressant de régler la taille sur la valeur d'expression. Pour régler la taille, il suffit d'ajouter un nombre précédé d'un « W » après l'identifiant. On peut donc aisément transformer notre liste en ajoutant seulement un « W » devant nos valeurs d'expression. De même, la couleur servira a représenter le sens de l'expression : tout ce qui est sur-exprimé sera bleu et tout ce qui est sous-exprimé, rouge. Il suffit d'ajouter une couleur HTML sur la ligne qu'on souhaite colorer.

devient alors

Notez qu'il vous faudra enlever le symbole « - » des données sous-exprimées.

iPath ne peut pas afficher des informations qui lui semble contradictoires. Par exemple, ath:AT4G19710 est sous-exprimé et ath:AT5G13280 est sur-exprimé mais tout les deux interviennent dans la même voie métabolique. iPath imprimera systématiquement les caractéristique du dernier gène dans la liste. Dès lors il faut mieux classer les gènes par valeur d'expression croissante : il serait dommage de ne pas voir un gène exprimé à 25 car juste après un gène exprimé à 1 intervient dans la même voie métabolique. Et finalement, pour éviter de nombreux soucis, il est sage de séparer les gènes sous-exprimés des sur-exprimés.

Notre liste devient alors :

Sur-exprimés :

Sous-exprimés :

On passe ces deux listes dans iPath2.0 et l'on exporte les résultats en SVG (onglet “Export” en haut à droite). Nous avons alors deux images qui nous montre les voies métaboliques sur-exprimées et sous-exprimées dans notre expérience B par rapport à A. Évidement, le SVG n'est qu'une image et ne contient pas toutes les informations qu'on a dans iPath2.0 en cliquant sur les arcs.

Résultats des données sur-exprimées

Résultats avec les données sur-exprimées.

Résultats sur les données sous-exprimées.

Résultats avec les données sous-exprimées.

Une dernière astuce pour les plus motivés et les connaisseurs d'Inkscape : fusionner les deux images de manière intelligente.

“Inkscaper” les résultats

Inkscape est un logiciel d'image vectoriel et est donc parfait pour modifier les SVG. Comme expliqué précédemment, il est possible qu'un arc soit à la fois coloré en bleu et en rouge : deux gènes différents sont exprimé de manière opposée mais interviennent dans la même voie métabolique.

Superposer les deux images n'est donc pas suffisant pour voir ce genre de subtilité. Il va falloir se débrouiller pour les plus “petits” objets apparaissent au dessus des plus gros.

On ouvre dans Inkscape une des deux images. On la sélectionne puis on la dégroupe une fois (Ctrl+G). On supprime alors 5 choses : le fond blanc, les légends en noirs, les nœuds, les légendes en blancs dans les bulles de couleurs et les bulles de couleurs. Il ne reste alors que les arcs.

On fait exactement la même chose sur la seconde image, sans sauvegarder. On copie les arcs d'une image sur la seconde, on aligne le tout (Ctrl+Shift+A).

On sélectionne tout et on dégroupe. Chaque arc est alors indépendant des autres. Il faut alors cliquer en dehors de notre image, puis tout sélectionner à nouveau (cela semble inutile mais sans cela un bug apparaît). Une fois qu'on a tout sélectionner, il suffit d'aller dans le menu « Extensions », « Organiser », « Réempiler » et choisir « De haut en bas (270) ».

Une fois le processus terminer, nos arcs seront classé avec les plus gros au fond et les plus fin au dessus, rendant visible l'ensemble des informations.

Avant Inkscape

Avant réorganisation des objets par Inkscape.

Après Inkscape

Après réorganisation des objets par Inkscape. Au milieu, un arc rouge est présent sur un arc bleu plus large. Le bleu cachait le rouge avant le traitement.

(On voit que l'arc bleu vers le milieu est aussi rouge et plus fin après le traitement)

Alors, on peut rouvrir une des images, la dégrouper et aligner notre nouvelle image d'arcs à l'ancienne. Puis en supprimant l'ancienne, on retrouve les légendes et les nœuds.

Image finale

Image finale après le traitement par Inkscape

Pour aller plus loin :
L'aide d'iPath2.0 est très bien réalisée (http://pathways.embl.de/help.html) et la publication officielle est assez simple à lire.

Takuji Yamada, Ivica Letunic, Shujiro Okuda, Minoru Kanehisa and Peer Bork (2011). iPath2.0: interactive pathway explorer. NAR, 39.

Merci à Akira et Nallias pour les relectures et conseils.

  • À propos de
  • Après un DUT informatique et une licence Mathématiques, Informatique et Statistique, j'ai poursuivi en Master de Modélisation des Systèmes Biologiques, parcours bio-informatiques, à Rennes, puis en thèse à l'IRISA-INRIA de Rennes sur une problématique de création d'algorithmes pour l'étude de métagénomique de novo. J'ai ensuite fait un postdoc à la "Stazione Zoologica Anton Dohrn" de Naples, sur des problématiques mêlant métagénomique, océanographie et Tara Oceans. Je suis maintenant ingénieur de recherche à l'Institut Pasteur (HUB).

3 commentaires sur “iPath partout !

  1. Ça a l'air vraiment chouette, merci pour l'info!

  2. Bonjour,

    Merci pour cet article intéressant.

    J'aimerais savoir plus précisément pourquoi "il est sage de séparer les gènes sous-exprimés des sur-exprimés." ?

    Merci par avance de votre retour.
    Bien cordialement.

    • Bonjour, la raison principale est qu'il est possible que deux gènes différents soient exprimés de manière opposée mais interviennent dans la même voie métabolique, comme dans mon exemple.

      Si on ne sépare pas les sous-exprimés des sur-exprimés, cela va créer un conflit dans le logiciel : pour un arc donné il aura des informations différentes (par exemple, taille de 5 et couleur rouge puis taille de 25 et couleur bleu). Il va alors choisir la dernière source de données et on perdra donc de l'information (iPath l'indique dans la colonne "Selection conflits"). C'est aussi pour cette raison qu'il est bon de trier les identifiants par expression croissante.

      Enfin, quand on l'utilise pour des expériences plus complexes, avec plusieurs échantillons, etc, il peut arriver qu'un même gène soit à la fois sur-exprimé et sous-exprimé par rapport à une condition neutre. Dans ce cas encore, séparer les deux cas permet d'avoir toutes les informations.

Laisser un commentaire