使用r visnetwork包控制带有值和宽度的边缘宽度

时间:2018-08-10 19:56:43

标签: r igraph visnetwork

我正在尝试使用visNetwork软件包可视化我的网络。但是我发现自己对控制节点大小和边缘宽度完全感到困惑。在第一个示例中,我在节点中设置value=1,在边缘中设置value=0.1。在第二个示例中,我在节点中设置value=10,在边缘中设置width=0.1。但是,在两个图中,节点的大小似乎都相同。更改边缘宽度似乎适用于width而不是value。我不知道为什么我确实看到人们在边缘使用value来控制边缘宽度。 有人可以在这个问题上向我澄清吗?另外,节点大小和边缘宽度的值范围是多少?

nodes1 <- data.frame(id = 1:10, 
                    label = paste("Node", 1:10),# add labels on nodes
                    value = 1,  #**
                    color = c("darkblue"))   
edges1 <- data.frame(from = sample(1:10,8),
                    to = sample(1:10, 8),
                    value = 0.1  #**
                    ) 
visNetwork::visNetwork(nodes1, edges1, width = "150%", physics=F) 

nodes2 <- data.frame(id = 1:10, 
                    label = paste("Node", 1:10),# add labels on nodes
                    value = 10,  #**
                    color = c("darkblue"))   
edges2 <- data.frame(from = sample(1:10,8),
                    to = sample(1:10, 8),
                    width = 0.1 #**
                    ) 
visNetwork::visNetwork(nodes2, edges2, width = "150%", physics=F)

1 个答案:

答案 0 :(得分:0)

看起来节点的大小基于比较而起作用。如果设置的值比图大,则仅以最佳比例反映相同大小的节点,因此不会更改 如果您将值等于不同的数字,则会看到大小不同的节点

nodes2 <- data.frame(id = 1:10, 
                     label = paste("Node", 1:10),# add labels on nodes
                     value = 1:10, #**
                     color = c("darkblue"))   
edges2 <- data.frame(from = sample(1:10,8),
                     to = sample(1:10, 8),
                     width = 0.1 #**
) 
visNetwork::visNetwork(nodes2, edges2, width = "150%", physics=F)

enter image description here