这是我的程序:
networkD3::forceNetwork(Links = links.d3, Nodes = nodes.d3,
Source = "from", Target = "to",
NodeID = "node_id", Group = "group_id",
zoom = TRUE, opacity = 1.0, legend = TRUE,
fontSize = 12)
然后我尝试了:
onRender(network, "function(el,x) { d3.selectAll('.node').on('mouseover', null); }")
这只会一起删除标签。理想情况下,当我将鼠标悬停在某个节点上之后,我希望能够单击该节点,然后保留该节点的标签。
谢谢!!
答案 0 :(得分:0)
使用opacityNoHover = 1
作为forceNetwork()
函数的参数。此选项和所有其他选项在帮助文件中(在控制台中键入?networkD3::forceNetwork
)。这将使所有标签始终可见。
如果要防止在将鼠标移离节点时标签消失,只需修改代码以使mouseout
事件而不是mouseover
事件为空...
onRender(network, "function(el,x) { d3.selectAll('.node').on('mouseout', null); }")