在 R 中更改 iGraph 中的 node/vertice 不透明度
Changing node/vertice opacity in iGraph in R
我有一个网络,当我绘制它时,它有许多重叠节点。我想更改颜色的不透明度,以便您可以在重叠时看到其他颜色下方的节点。例如,请观看此视频:https://vimeo.com/52390053
我正在使用 iGraph
进行绘图。这是一个简化的代码简介:
net1 <- graph.data.frame(myedgelist, vertices=nodeslist, directed = TRUE)
g <- graph.adjacency(get.adjacency(net1))
V(g)$color <- nodeslist$colors #This is a set of specific colors corresponding to each node. They are in the format "skyblue3". (These plot correctly for me).
E(g)$color <-"gray"
plot.igraph(g)
但是,我无法在 iGraph
中找到更改节点颜色不透明度的选项。
知道我该怎么做吗?我想可能是 V(g)$alpha <- 0.8
之类的东西,但这没有任何作用。
您可能想试试,例如这个:
library(igraph)
set.seed(1)
g <- barabasi.game(200)
plot(g,
vertex.color = adjustcolor("SkyBlue2", alpha.f = .5),
vertex.label.color = adjustcolor("black", .5))
我觉得比lukeA提供的方法更容易控制的方法是使用rgb()。您可以根据其四个通道指定颜色(节点、节点框架、边缘等):R、G、B 和 A(alpha):
library(igraph)
set.seed(1)
g <- barabasi.game(200)
plot(g,
vertex.color = rgb(0,0,1,.5),
vertex.label.color = rgb(0,0,0,.5))
另一个优点是您可以根据矢量轻松改变 alpha(或颜色)。下面的示例并不完全实用,但您知道如何使用它:
library(igraph)
set.seed(1)
g <- barabasi.game(200)
col.vec <- runif(200,0,1)
alpha.vec <- runif(200,0,1)
plot(g,
vertex.color = rgb(0,0,col.vec,alpha.vec),
vertex.label.color = rgb(0,0,0,.5))
我有一个网络,当我绘制它时,它有许多重叠节点。我想更改颜色的不透明度,以便您可以在重叠时看到其他颜色下方的节点。例如,请观看此视频:https://vimeo.com/52390053
我正在使用 iGraph
进行绘图。这是一个简化的代码简介:
net1 <- graph.data.frame(myedgelist, vertices=nodeslist, directed = TRUE)
g <- graph.adjacency(get.adjacency(net1))
V(g)$color <- nodeslist$colors #This is a set of specific colors corresponding to each node. They are in the format "skyblue3". (These plot correctly for me).
E(g)$color <-"gray"
plot.igraph(g)
但是,我无法在 iGraph
中找到更改节点颜色不透明度的选项。
知道我该怎么做吗?我想可能是 V(g)$alpha <- 0.8
之类的东西,但这没有任何作用。
您可能想试试,例如这个:
library(igraph)
set.seed(1)
g <- barabasi.game(200)
plot(g,
vertex.color = adjustcolor("SkyBlue2", alpha.f = .5),
vertex.label.color = adjustcolor("black", .5))
我觉得比lukeA提供的方法更容易控制的方法是使用rgb()。您可以根据其四个通道指定颜色(节点、节点框架、边缘等):R、G、B 和 A(alpha):
library(igraph)
set.seed(1)
g <- barabasi.game(200)
plot(g,
vertex.color = rgb(0,0,1,.5),
vertex.label.color = rgb(0,0,0,.5))
另一个优点是您可以根据矢量轻松改变 alpha(或颜色)。下面的示例并不完全实用,但您知道如何使用它:
library(igraph)
set.seed(1)
g <- barabasi.game(200)
col.vec <- runif(200,0,1)
alpha.vec <- runif(200,0,1)
plot(g,
vertex.color = rgb(0,0,col.vec,alpha.vec),
vertex.label.color = rgb(0,0,0,.5))