GEXFVizz – Kreisrunde Säulendiagramme

5 Sep

Da wohl noch ein wenig Bedarf an einer kleinen Skizze zum Erstellen von Säulendiagramme mit der Hilfe von Circos bestand, möchte ich mich im folgenden Blogeintrag ebendiesem annehmen. Dabei möchte ich versuchen die Thematik so allgemein gültig wie möglich zu erklären, damit sie in vielen verschiedenen Bereichen einfach angewendet werden kann.

 
Nehmen wir für dieses Beispiel mal an, unsere X-Achse benötigt 240 Einheiten von irgendetwas. Da wir alle Plots in Circos ja auf diese Chromosomen auftragen, benötigen wir damit eine Chromosomlänge von 240. Somit sieht unsere Datei zum Erstellen der Chromosomen so aus:

chr - ID1 values 0 240 green
chr - ID2 dummy 0 240 red

Dabei habe ich die zweite Zeile nur eingefügt damit ich am Ende die Hälfte des Kreises für mein Säulendiagramm benutze [ Deswegen ist das Label des zweiten Chromosoms auch dummy :) ]. Damit haben wir nun eine Chromosomlänge von 240 und können diese nun als X-Achse ausfüllen.

Hierfür können wir einfach die benötigten Daten für unsere Säulendiagramme tabellarisch in eine Datei eintragen. In dieser Datei beginnt die erste Spalte mit der ID des Chromosoms und in der zweiten und dritten Spalte befindet sich die „range“ des Eintrages (also zB. von 0 bis 5). Die letzte Spalte enthält dann den Wert für diesen Abschnitt.
In unserem Beispiel schreiben wir in diese Datei nun den folgenden Inhalt:

ID1 0 5 8
ID1 5 45 6
ID1 45 90 12
ID1 90 150 8
ID1 150 240 4

Jetzt werden diese beiden Dateien in die Circos Konfigurationsdatei eingebunden.

Da ihr die Dateien in einem gepackten Archiv herunterladen könnt, würde es wohl an dieser Stelle nicht viel Sinn machen die gesamten Dateien darzustellen, aber ich stelle mal ein paar Kleinigkeiten heraus, die nennenswert sind. In der Konfigurationsdatei ist zum Beispiel enthalten:

file_delim = \t

Dies besagt, dass die „Daten Dateien“ für die Diagramme und Chromosomen durch Tab getrennt werden und nicht wie standardmäßig eingestellt durch Leerstellen.

 

karyotype = /var/www/circos/blog/knoten.txt

Bindet die Datei mit den Chromosomen ein.

 

<colors>

green = 0,255,0

red = 255,0,0

</colors>

Hier werden benötigte Farben definiert (in RGB).

 

<plots>
<plot>
min = 0
max = 12
color = black
file = /var/www/circos/blog/diagram.txt
thickness = 2
fill_under = yes
r0 = 0.87r
show = yes
r1 = 0.97r
fill_color = blue
type = histogram
extend_bin = no
<backgrounds>
<background>
color = vlgrey
</background>
</backgrounds>
<axes>
color = black_a4
thickness = 1
<axis>
spacing = 0.25r
</axis>
</axes>
</plot>
</plots>

In diesem Abschnitt werden spezifische Eigenschaften des Balkendiagramm eingestellt. Eine Auflistung von diesen Parameter findet ihr in den Circos Tutorials.

 

Die Ausgabe von Circos sieht dann so aus:

Und nachdem wir den dummy Teil weggeschnitten haben, bleibt noch übrig:


Gerade wenn man darüber nachdenkt, dass man diese Diagramme ja nun mit allen weiteren Möglichkeiten von Circos kombinieren kann (links, etc) ist dies doch schon sehr flexibel und mächtig. Alle benötigten Konfigurationsdateien könnt ihr hier runterladen.

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: