我是 R 的新手,并试图弄清楚如何为我拥有数据的系统制作社交网络 map 。

我已经设法从常见问题解答和教程中找出我想要做的大部分事情,但我被困在两件事上。

  • 如何使 Canvas 更大/图形间隔更大?现在它太压扁了。
  • 目前边缘厚度是根据权重设置的。权重代表不同的状态(8 = 事件,3 = 请求,2 = 隐藏,1 = 阻止),我想为边缘设置样式而不是改变它们的厚度。在理想的世界中,绿色代表主动,绿色虚线代表请求,黑色代表隐藏,红色代表被阻止。一个潜在的问题是两个方向的权重可能不相同(即 u53 可能隐藏或阻止 u114,但 u114 对 u53 没有任何作用)。我不知道该怎么办:)

  • 我在 http://www.r-fiddle.org/#/fiddle?id=7a2Aiql2&version=3 上放了一些示例数据和代码

    编辑:在 http://www.r-fiddle.org/#/fiddle?id=7a2Aiql2&version=5 上更新了颜色的 fiddle (感谢@Chris) - 仍然没有弄清楚如何制作更大的情节,所以这一切都有空间!

    谢谢!

    最佳答案

  • 您可以将 ylimxlim 参数的值更改为 plot.igraph(或许还有 asp 参数)。如果这些都不起作用,那么您可能必须给顶点 xy 属性以将它们隔开。
  • 要根据重量为边缘着色,您可以执行例如
    E(g)$color[E(g)$weight == 8] <- 'green'
    E(g)$lty[E(g)$weight == 8] <- 1
    E(g)$color[E(g)$weight == 3] <- 'green'
    E(g)$lty[E(g)$weight == 3] <- 2
    

  • 等等。您的其余问题更取决于您的个人喜好。

    关于r - 如何使用 R/igraph 设置边缘颜色和顶点间距,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31418599/

    10-12 20:40