2016-08-01 16 views
1

Ich versuche verschiedene Visualisierungen für eine Igraph in R (Version.3.3.1). Derzeit ist meine Visualisierung wie unten dargestellt, 2 Knoten (blau und grün) im kreisförmigen Layout.Halbkreis-Layout in R

Circular Layout

visNetwork(data$nodes,data$edges) %>% visIgraphLayout(layout="layout_in_circle") 

Jetzt möchte ich statt einen Vollkreis einen Halbkreis-Struktur haben, wie im Bild. Alle blauen Knoten bilden einen Halbkreis, grüne Knoten einen weiteren Halbkreis. Jeder Halbkreis ist ebenfalls durch einen kleinen Abstand voneinander getrennt. Wie kann ich das erreichen? Ich habe festgestellt, dass das Grid-Paket eine Option für den Halbkreis hat, aber ich konnte es nicht mit igraph machen. Bitte geben Sie einige Hinweise an.

Antwort

1

Das layout Argument akzeptiert eine beliebige Matrix mit zwei Spalten und N Zeilen, wenn Ihr Diagramm N Ecken hat; Alles, was Sie tun müssen, ist eine Liste von Koordinaten zu erstellen, die einem Halbkreis entsprechen. Sie können die Tatsache ausnutzen, dass ein Scheitelpunkt unter dem Winkel alpha um einen Kreis mit dem Radius r um (0, 0) bei (r * cos(alpha), r * sin(alpha)) zu finden ist. Da Sie R verwenden, alpha sollte im Bogenmaß angegeben werden, gleichmäßig zwischen 0 und pi (was 180 Grad entspricht).