Plot 如何更改内聚块的节点颜色?
我试图更改特定图形中的节点颜色,但Plot 如何更改内聚块的节点颜色?,plot,colors,attributes,nodes,social-networking,Plot,Colors,Attributes,Nodes,Social Networking,我试图更改特定图形中的节点颜色,但V(gsna)$color命令不起作用。出于某种原因,我可以改变形状,但不能改变颜色。具体来说,我想更改占据每个内聚块的节点的颜色。默认颜色在黑白打印中不易识别 数据集sna是一个2模式非对称关联矩阵。下面是一个示例(实际上,数据集要大得多): 我使用内聚.blocks()命令创建分层嵌套的块。主题由圆表示,属性由正方形表示。 这是我的密码: library(igraph) as.matrix(sna) -> sna gsna <- graph.i
V(gsna)$color
命令不起作用。出于某种原因,我可以改变形状,但不能改变颜色。具体来说,我想更改占据每个内聚块的节点的颜色。默认颜色在黑白打印中不易识别
数据集sna是一个2模式非对称关联矩阵。下面是一个示例(实际上,数据集要大得多):
我使用内聚.blocks()命令创建分层嵌套的块。主题由圆表示,属性由正方形表示。
这是我的密码:
library(igraph)
as.matrix(sna) -> sna
gsna <- graph.incidence(sna)
bloc <- cohesive.blocks(gsna)
par(mar=c(.05,.05,.05,.05),cex=.8)
V(gsna)[V(gsna)$type == 1]$shape <- "square"
V(gsna)[V(gsna)$type == 0]$shape <- "circle"
plot(bloc,gsna,layout=layout.fruchterman.reingold,vertex.size=5,edge.color="gray40",
vertex.label.color="black",mark.groups=blocks(bloc))
库(igraph)
as.矩阵(sna)->sna
gsna我要感谢罗纳德·布雷格教授亲自回答这个问题
解决办法如下:
group1 <- bloc$blocks[[1]]
a <- V(gsna)[group1]$color <- rep("blue4", length(group1))
group2 <- bloc$blocks[[2]]
b <- V(gsna)[group2]$color <- rep("deeppink", length(group2))
group3 <- bloc$blocks[[3]]
c <- V(gsna)[group3]$color <- rep("greenyellow", length(group3))
plot(gsna,layout=layout.fruchterman.reingold,vertex.size=5,edge.color="gray40",
vertex.label.color="black",vertex.color=V(gsna)$color,mark.groups=blocks(bloc))
group1
group1 <- bloc$blocks[[1]]
a <- V(gsna)[group1]$color <- rep("blue4", length(group1))
group2 <- bloc$blocks[[2]]
b <- V(gsna)[group2]$color <- rep("deeppink", length(group2))
group3 <- bloc$blocks[[3]]
c <- V(gsna)[group3]$color <- rep("greenyellow", length(group3))
plot(gsna,layout=layout.fruchterman.reingold,vertex.size=5,edge.color="gray40",
vertex.label.color="black",vertex.color=V(gsna)$color,mark.groups=blocks(bloc))