繁体   English   中英

从 visNetwork 可视化中删除节点和边标签,并在单击节点和边时显示信息

[英]remove node and edge label from visNetwork visualiztion and display info when click on nodes and edges

我使用 visNetwork 来可视化我的网络。 下面是代码(从 visNetwork cran page 借来的)。 我的问题是:

  1. 我不会显示顶点和边标签。 如何将其从可视化中删除?
  2. 我想在单击节点时显示节点信息。 当我单击任何节点和边时,似乎会显示数据标题列中的任何内容。 标题是点击信息显示的“保留”列名称吗?
  3. 当我点击任何节点时,我几乎看不到任何东西。 如何更改点击显示上的字体? 非常感谢。

library(igraph)
library(visNetwork)
nodes <- data.frame(id = 1:10, 
    label = paste("Node", 1:10),                                 
    group = c("GrA", "GrB"),                                     
    value = 1:10,                                               
    shape = c("square", "triangle", "box", "circle", "dot", "star",
    "ellipse", "database", "text", "diamond"),                   
    title = paste0("<p><b>", 1:10,"</b><br>", paste("Node", 1:10),"</p>"), 
    color = c("darkred", "grey", "orange", "darkblue", "purple"),
    shadow = c(FALSE, TRUE, FALSE, TRUE, TRUE))                  



    edges <- data.frame(from = sample(1:10, 8), to = sample(1:10, 8),
    label = paste("Edge", 1:8),                                 
    length = c(100,500),                                        
    arrows = c("to", "from", "middle", "middle;to"),           
    dashes = c(TRUE, FALSE),                                    
    title = paste("Edge", 1:8),                                 
    smooth = c(FALSE, TRUE),                                    
    shadow = c(FALSE, TRUE, FALSE, TRUE))                       


 g <- graph_from_data_frame(d = edges, vertices = nodes)
 visIgraph(g)

您可以使用font.size参数完成 1.(见下文)。 关于 2. 和 3., titlevisNodes文档读取

默认为未定义。 当用户悬停在节点上时显示的标题。 标题可以是 HTML 元素或包含纯文本或 HTML 的字符串。

我想你可以通过调整title的 html 来完成你想要的 3 ,就像我在下面所做的那样。

nodes <- data.frame(id = 1:10, 
                    label = paste("Node", 1:10),                                 
                    group = c("GrA", "GrB"),                                     
                    value = 1:10,                                               
                    shape = c("square", "triangle", "box", "circle", "dot", "star",
                              "ellipse", "database", "text", "diamond"),                   
                    title = paste0("<p><b style='font-size: 40px'>", 1:10,"</b><br>", paste("Node", 1:10),"</p>"), 
                    color = c("darkred", "grey", "orange", "darkblue", "purple"),
                    shadow = c(FALSE, TRUE, FALSE, TRUE, TRUE),
                    font.size = c(0, 0, 0, 0, 0))                  

edges <- data.frame(from = sample(1:10, 8), to = sample(1:10, 8),
                    label = paste("Edge", 1:8),                                 
                    length = c(100,500),                                        
                    arrows = c("to", "from", "middle", "middle;to"),           
                    dashes = c(TRUE, FALSE),                                    
                    title = paste("Edge", 1:8),                                 
                    smooth = c(FALSE, TRUE),                                    
                    shadow = c(FALSE, TRUE, FALSE, TRUE),
                    font.size = c(0, 0, 0, 0)) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM