2013-05-06 65 views
1

我使用的igraph绘制上R.我一个小型网络(21个节点)希望根据矢量postMean,其具有的值来着色的节点:如何在R中创建精细的色标,用于用igraph绘制节点颜色?

[1] -0.035275268 0.016065216 -0.009860104 -0.110333756 0.027173563 

[6] 0.003732149 -0.015728577 -0.015447753 -0.015458429 -0.031747722 

[11] 0.050184673 0.052410534 0.025986002 0.059460753 0.044158671 

[16] -0.302219356 0.065311113 0.012006393 0.019186883 -0.006812400 

[21] 0.196030557 

如何调整规模的颜色,以便它会指示postMean向量的值,当数字很小时?我想要一个非常好的灰度级,但我现在似乎能够得到的是一些节点白色和一些节点黑色。

非常感谢提前。

+0

你能发布一些自包含的代码?一般来说,可以使用灰色()来表示灰度。 – 2013-05-06 14:09:17

回答

0

您可以使用plotrix软件包中的rescale()函数将矢量从0重新调整为1,然后使用gray()函数将这些函数转换为灰度色。

library(igraph) 
library(plotrix) 
vcol <- gray(rescale(postMean, c(0, 1))) 
tkplot(graph, vertex.color=vcol) 

如果你不希望的颜色的范围一直延伸到黑色和白色,可以减少值的,你重新调整,例如范围:

vcol <- gray(rescale(postMean, c(0.1, 0.9)))