【问题标题】:Change edge thickness in igraph plot R according to Edge Attributes根据边缘属性更改 igraph 图 R 中的边缘厚度
【发布时间】:2014-04-13 14:41:55
【问题描述】:

我想更改图表的边缘宽度以对应 edge.betweenness 分数。

 net <- read.csv("D:/SNA/R/Net.csv")
 att <- read.csv("D:/SNA/R/Att.csv")
 g <- graph.data.frame(net, vertices=att, directed=TRUE)
 pdf("Network.pdf", pointsize=8)
 plot(g, vertex.label=NA, vertex.size=3, edge.width=edge.betweenness(g))
 dev.off()

我还尝试将边缘介数分数创建为边缘权重,并将其分配给绘图函数中的 edge.width 参数,如下所示;

plot(g, vertex.label=NA, vertex.size=3, edge.width=E(g)$width

【问题讨论】:

  • 您能否提供一些示例数据,我可以用来重新创建您的图表
  • 您的示例应该有效。也许您看不到差异,因为边缘介数分数彼此接近。我们实际上甚至不知道你看到了什么,问题是什么.....
  • 我得到的错误是; i.parse.plot.params(graph, list(...)) 中的错误:未知的边缘参数:权重
  • 感谢 cmets,我已经能够让它工作了..
  • 为什么不为 Net.csv 和 Att.csv 放置简单的副本,以便所有 R 社区都可以更好地利用这个问题。参见,例如,set.seed(1); data.frame(replicate(4, rnorm(100)))

标签: r igraph


【解决方案1】:

您的示例应该有效。或者,你可以写

E(g)$weight <- edge.betweenness(g)

在绘图功能之前。

【讨论】:

    猜你喜欢
    • 2016-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多