GEXFVizz: Über Netzwerke und Kreise (Circos)

18 Jul

Wie vielleicht bereits letztes Mal herausgekommen ist, beschäftige ich mich im Moment relativ viel mit der Visualisierung von Circos Daten und dem Wandeln von ,normalen‘ Graphen in eben diese Circosvisualisierung. Nun ist es so, dass wir bei einer komplexeren Visualisierung mit Circos, auch eine große Menge an verschiedenen Informationen geboten bekommen und diese auf den ersten Blick wirklich nichts mehr mit unseren typischen und bekannten Graphen gemein hat.

Allerdings können wir diese ganzen optionalen Informationen erst einmal komplett entfernen und uns den Kern des Bildes näher ansehen:

An diesen Punkt wird das Ganze schon ein wenig klarer, denn hier sind nur noch außen die Chromosomen aufgelistet (Circos ist eigentlich für biologische Visualisierung von Genomen gedacht, aus diesem Grund hat man in den Konfigurationsdateien auch eine entsprechende Terminologie), deren Größe einen Wert des Chromosoms darstellt. Zwischen diesen Chromosomen können wir jetzt Verbindungen ziehen; und an dieser Stelle bemerkt man bereits die doch ziemlich deutliche Ähnlichkeit zu den uns bekannten Graphen.

Somit habe ich mittels des Gephi Toolkits eine Klasse programmiert, die die GEXF Datei einliest und sich die Knoten und Kanten aus dem Graphen ausliest. Die Idee ist nun, dass die Knoten in einem Graphen den Chromosomen in der entsprechenden Circosvisualisierung entsprechen und die Kanten innerhalb des Graphen die Verbindungen zwischen den Chromosomen darstellen. Somit ist hier sehr einfach eine direkte Übertragung von Graph zu Circos möglich.

Zum Beispiel werden die Knoten in einer entsprechenden Datei wie folgt definiert:
chr – hs1 1 0 22

Damit meint man: „Dies ist ein Chromosom mit der id „hs1“, dem Label „1“ und der Länge 22. Einfach, oder ? In Bildern ausgedrückt entsteht auf diese Art und Weise automatisch aus folgendem Graphen

diese Visualisierung:

Zudem kann man die Kantenstärken direkt wieder verwenden, da auch in Circos die Verbindung unterschiedlich breit sein können. Netterweise kann man so sehr einfach Attribute der Knoten mit auftragen, indem man zum Beispiel die Chromosomen unterschiedlich groß darstellt (in meinem Fall werden bei den Chromosomen zusätzlich verschiedene SNA Metriken bestimmt und in die Größe der Chromosomen eingerechnet).

Allerdings habe ich in diesem Bereich noch eine Menge Arbeit vor mir, da ich die Visualisierungen noch intuitiver und aussagekräftiger werden lassen möchte … :)

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: