在visNetwork中,默认情况下文本不会进入节点内部,而是显示在节点下面:
require(visNetwork, quietly = TRUE)
nodes <- data.frame(id = 1:3, label=2014:2016 ,value=1:3)
edges <- data.frame(from = c(1,2), to = c(1,3))
visNetwork(nodes, edges, width = "100%")

似乎解决此问题的唯一方法是将set shape属性设置为circle。
require(visNetwork, quietly = TRUE)
nodes <- data.frame(id = 1:3, label=2014:2016 ,value=1:3,shape='circle')
edges <- data.frame(from = c(1,2), to = c(1,3))
visNetwork(nodes, edges, width = "100%")

问题是,正如您在上面的图中所看到的,现在使用value属性的圆圈内标签缩放节点不起作用。
那么问题是,如何同时拥有两个选项(“规模”和“内部文本”)?
PS:真遗憾,没有visNetwork标签!
发布于 2016-09-25 17:48:54
我找到了一个棘手的方法来解决这个问题。设置font.size而不是value属性很好。为了达到最佳的可视化效果,您需要对其进行缩放。例如,我把它放大了10倍:
require(visNetwork, quietly = TRUE)
nodes <- data.frame(id = 1:3, label=2014:2016 ,font.size =(1:3)*10,shape='circle')
edges <- data.frame(from = c(1,2), to = c(1,3))
visNetwork(nodes, edges, width = "100%")

发布于 2017-07-21 13:46:20
我找到了另一种方法,在标签的机器人两侧添加空格。
这将保持所有字体相同的大小。
n <- 5L
nodes <- data.frame(id = 1:3, label=paste0(strrep(" ",n), 2014:2016,
strrep(" ",n)) ,value=1:3,shape='circle')
edges <- data.frame(from = c(1,2), to = c(1,3))
visNetwork(nodes, edges, width = "100%")

如果标签的长度不一样,则可能要尝试其他标准。
https://stackoverflow.com/questions/39674927
复制相似问题