że ma następujący schemat utworzony w igraph
kontrolujący krawędzie widoczne na wykresie sieci w igraph w R
set.seed(1410)
df<-data.frame(
"site.x"=c(rep("a",4),rep("b",4),rep("c",4),rep("d",4)),
"site.y"=c(rep(c("e","f","g","h"),4)),
"bond.strength"=sample(1:100,16, replace=TRUE))
library(igraph)
df<-graph.data.frame(df)
V(df)$names <- c("a","b","c","d","e","f","g","h")
layOUT<-data.frame(x=c(rep(1,4),rep(2,4)),y=c(4:1,4:1))
E(df)[ bond.strength < 101 ]$color <- "red"
E(df)[ bond.strength < 67 ]$color <- "yellow"
E(df)[ bond.strength < 34 ]$color <- "green"
V(df)$color <- "white"
l<-as.matrix(layOUT)
plot(df,layout=l,vertex.size=10,vertex.label=V(df)$names,
edge.arrow.size=0.01,vertex.label.color = "black")
że chce pokazać wszystkie wierzchołki/węzłów ale tylko krawędzi, gdzie bond.strength> 34 (tj. tylko czerwone i żółte krawędzie). mogę kontrolować tego poprzez ustawienie bond.strength < 34 do bieli, ale nie jest całkiem, gdy odbywa się na moich rzeczywistych danych ustawiony jako białe brzegi „przeciąć” pozostałe krawędzie tj
Czy istnieje inny sposób po prostu kontrolować, które krawędzie są widoczne, pokazując wszystkie wierzchołki? Dzięki
To działało ładnie. Dzięki! – Elizabeth
To właściwie nie jest doskonałe, ponieważ niektóre urządzenia nie obsługują przezroczystości. Lepszym rozwiązaniem jest ustawienie typu linii na "0", co oznacza brak linii: 'E (df) [bond.strength <34] $ lty <- 0'. –
całkiem fajne! przezroczystość była sztuczką, której potrzebowałem, aby węzły cicho zniknęły. size = 0, shape = "none" i wiele innych ustawień po prostu nie działało. dzięki – Raffael