r - 改变 igraph 网络中边的权重

标签 r igraph

我本以为图算法会自动获取边缘数据框中的列权重,但事实并非如此,如以下代码所示:

nodes <- data.frame(name = c("1", "2", "3"), type = c("a", "b", "b"))
edges <- data.frame(from = c("1", "1"), to = c("2", "3"), weight = c(10000, 50))

net <- graph_from_data_frame(edges, directed=FALSE, vertices=nodes)
V(net)$size <- 2
V(net)$color <- ifelse(V(net)$type == "a", "darkblue", "orange")
V(net)$shape <- ifelse(V(net)$type == "a", "circle", "square")
plot(net)

有没有办法使用边缘数据框中专门命名的列(例如权重)来设置所描绘边缘的厚度?谢谢!

最佳答案

您可以尝试下面的代码

E(net)$width <- edges$weight
plot(net)

关于r - 改变 igraph 网络中边的权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65312638/

相关文章:

r - 在 R 中制作交互式图形

r - 从 Rmd 文档一次执行所有 R block

r - 根据度将属性添加到边缘列表

r - igraph:如何将图转换为二分图?

R: reshape 2 - colsplit 不适用于句号/句号

r - 如何使用 R 跳过我要导入的数据文件中的注释行

r - LFR 基准与随机 block 模型

r - 如何在不更改绘图位置的情况下从 igraph 中删除顶点

r - 将虚拟编码矩阵转换为邻接矩阵

r - 对 R 中的矩阵列表求和