R语言 如何将加权边缘列表可视化为有向网络

cotxawn7  于 2023-06-19  发布在  其他
关注(0)|答案(1)|浏览(95)

我在Excel中有一个边缘列表,看起来像这样:

from   to   weighted
a      b      5
c      b      0
d      b      20
a      c      1
b      c      30
d      f      1

如何读取这个边列表并将其可视化为加权网络?我目前有:

library(igraph)
library("readxl")

data <- read_excel("Sample.xlsx")
g <- graph_from_data_frame(data, directed = TRUE, vertices = NULL)
plot(g)

但该图不显示边权重。我应该使用什么函数来可视化权重?

b4lqfgs4

b4lqfgs41#

你可以使用绘图参数,如边缘。宽度,顶点。大小,边缘。颜色等可视化你的绘图。尝试下面的方法来做到这一点

library(igraph)
library(readxl)

data <- read_excel("Sample.xlsx")
g <- graph_from_data_frame(data, directed = TRUE, vertices = NULL)

# Use ur weighted column data here
edge_weights <- E(g)$weighted
max_weight <- max(edge_weights)
min_weight <- min(edge_weights)
scaled_weights <- rescale(edge_weights, to = c(1, 10))  

plot(g, edge.width = scaled_weights, edge.color = "gray", vertex.color = "lightblue", vertex.size = 30)

相关问题