So zeichnen Sie einen zweiteiligen Graph in R

8

Wie zeichne ich ein Netzwerk vom Typ zweigeteilt in R? Ähnliches:

Ich habe ähnliche Daten, aber mit Gewichten für beide Gene und Krankheiten und SARS. Dieses Netzwerk ist ein Beispiel. Ich habe verschiedene Arten von Attributen. Ich folgte einem Link Hier. Aber aufgrund meiner geringen Kenntnisse in diesem Thema konnte ich nicht viel daraus machen. Vielen Dank im Voraus für jede Hilfe.

    
Pankaj 12.07.2015, 08:55
quelle

3 Antworten

6

Von der ?bipartite_graph help:

  

Bipartite Graphen haben ein Typ-Vertex-Attribut in iigraph, dies ist boolesch und FALSE für die Scheitelpunkte der ersten Art und TRUE für Scheitelpunkte der zweiten Art.

Du könntest also so etwas machen ( igraph 1.0.1 ):

%Vor%

Überprüfen Sie auch ?bipartite .

Verwenden Sie das Beispiel des OP in den Kommentaren. Da das Diagramm multipartite ist und das angegebene Datenformat erhält, würde ich zuerst einen zweiteiligen Graph erstellen und dann die zusätzlichen Kanten hinzufügen. Beachten Sie, dass, obwohl das resultierende Diagramm TRUE für is_bipartite() zurückgibt, das Argument type als numerisch anstelle von logisch angegeben ist und möglicherweise nicht ordnungsgemäß mit anderen bipartiten Funktionen funktioniert.

%Vor%

Die Funktion layout.concentric() ist in (my) package rTRM verfügbar unter Bioconductor . Es ist wirklich eine einfache Implementierung, die ich geschrieben habe, um genau das zu tun, was Sie wollen. Ich bin mir nicht ganz sicher, ob die letzte igraph -Version die gleiche Funktionalität hat (kann es sein).

    
ddiez 12.07.2015, 14:38
quelle
6

Für das von Ihnen bereitgestellte Beispiel würde ich empfehlen, die Attribute x und y zu verwenden, um ein zweiteiliges Diagramm zu visualisieren. Zum Beispiel:

%Vor%

BEARBEITEN: Code hinzugefügt, um den Scheitelpunkten und Kanten unterschiedliche Farben zu geben.

    
Chris Watson 13.07.2015 05:30
quelle
2

Oder Sie können das multigraph -Paket verwenden.

%Vor%

kann die Binomialprojektion des Two-Mode-Datensatzes erzeugen

    
JARO 08.02.2017 10:17
quelle