如何使用R/igraph设置边缘颜色和顶点间距

4

我刚开始学习 R 语言,�试用我的数�制作一个社交网络图谱。

�FAQ和教程中,我已���了大部分所需的�作,但是我还有两个问题。

  1. 如何扩大画布或者�加图形间�?�在看起�太拥挤了。

  2. 目�边缘粗细是基���设置的。这些��代表��的状�(8 = Active,3 = Requested,2 = Hidden,1 = Blocked),我想�改�边缘的样�而�是其粗细。在�想情况下,Active为绿色�Requested为虚线绿色�Hidden为黑色�Blocked为红色。一个潜在的问题是,��在两个方�上�能�相�(例如,u53�能会��或�蔽u114,但u114对u53没有�任何事情)。我�确定该�么�🙂

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

编辑:在http://www.r-fiddle.org/#/fiddle?id=7a2Aiql2&version=5上更新了颜色(感谢@Chris)——还没有找到如何制作更大的图形以便容纳它们所有�

谢谢�


在矢量图形中,一切都是相对的,因此使顶点更小。如果您正在使用非矢量图形,例如PNG,请创建一个更大的PNG。请参阅?png。 - Gabor Csardi
1个回答

7
  1. You can change the values for the ylim and xlim arguments to plot.igraph (and perhaps also the asp argument). If none of those works, then you may have to give the vertices x and y attributes to space them out.
  2. To color edges based on weight, you would do e.g.

    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
    

等等。你问题的剩下部分更多地取决于你的个人喜好。


谢谢 - 这回答了颜色问题。更改xlim/ylim和asp有所帮助(尽管我并不真正理解我在做什么),但实际上我需要让画布变大,这样就有更多的空间来分散物品。更新的fiddle网址为http://www.r-fiddle.org/#/fiddle?id=7a2Aiql2&version=5 - Ben Holness

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接