Col*_*lin 2 conditional r colors igraph vertex
我是R和iGraph的新手.我正在尝试在列#1中创建一个顶点,以特定颜色显示.
我的数据来自CSV,看起来像这样:
CL1920 202.80 V66.7 198.89 511.9 799.02 401.9 696.1 388.01 202.80
RM119041 331.82 294.10
RM38755 331.82 294.10 276.0 331.0 294.10
HK54701 331.82 294.10 276.0 331.0 294.10 401.9 V10.51
....
Run Code Online (Sandbox Code Playgroud)
我的剧情脚本看起来像这样:
dat <- read.csv("data.csv", header =F)
g <- graph.data.frame(dat, directed = F)
colCount <- 1+ count.fields("dat.csv", sep = ",")
V(g)$label <- NA
set.seed(10)
par <- par()$mar; par(mar=rep(0, 4))
plot (g, layout = layout.fruchterman.reingold,
vertex.frame.color = "#FFFFFF",
vertex.size = 5,
edge.width = 2.5+ (log(colCount)/max(log(colCount))),
edge.color = "Grey60")
Run Code Online (Sandbox Code Playgroud)
我试过设置vertex.color失败了.像这样的例子似乎默认为"lightblue"
V(g)$color <- ifelse (V(g)$V1, "red", "blue")
Run Code Online (Sandbox Code Playgroud)
有人能指出我正确的方向吗?
所以(从评论中)看来,目标是根据顶点是否出现在dat
数据框的第一列中来设置顶点颜色.这是一种方式:
V(g)$color <- ifelse(V(g)$name %in% dat[,1], "red", "blue")
plot(g)
Run Code Online (Sandbox Code Playgroud)