根据它们的中心性着色顶点

我试图改变igraph生成图中顶点的颜色.
更具体地说,我有一个从邻接矩阵创建的95节点图,我想根据它们的度/中间性/特征值中心性/亲密度对它们进行着色,但我猜想在我知道如何用一个,我将能够与其他人一起做.

所以我编写了图形生成的基础知识,直到现在:

dataset <- read.csv(“~/Google Drive/Cours M2/Network Economics/Data/Collabs_2013.csv”, sep=”;”)
matrix<-as.matrix(dataset)
adj<-graph.adjacency(matrix)
plot(adj)
btw<-betweenness(adj,directed = FALSE)

我现在有一个95个中间值的矢量,我想绘制一个图形,其颜色的渐变遵循中介值(例如,从最低值的红色到绿色到最高值).我猜我必须弄乱顶点的属性,但我不知道如何输入矢量作为颜色属性.

好像你已经完成了大部分工作.您只需要知道colorRamppalette并为网络设置vertex.color.假设你必须线性改变颜色,

做就是了

fine = 500 # this will adjust the resolving power.
pal = colorRampPalette(c('red','green'))

#this gives you the colors you want for every point
graphCol = pal(fine)[as.numeric(cut(btw,breaks = fine))]

# now you just need to plot it with those colors
plot(adj, vertex.color=graphCol)

归功于this.在回答这个问题之前,我使用了一种效率更低的方法来分配颜色.

相关文章
相关标签/搜索