javascript - 如何禁用 networkD3/d3Network 网络图中的鼠标悬停效果(GNU R 包)

标签 javascript r d3.js htmlwidgets networkd3

我想在 http://christophergandrud.github.io/d3Network/ 上提供的网络图中禁用鼠标悬停效果(搜索“放大”)。 即使没有 native 选项,我想也可以通过使用 htmltoolshtmlwidget 插入适当的 javascript 函数(例如 http://bl.ocks.org/PandaRider/84b9c096e37334c2a4fd945a66b8ccf9)。

更新: 刚刚注意到烦人的效果出现在 Chrome 而不是 Edge 中。

最佳答案

“本地”不支持它,但您可以使用 htmlwidgets::onRender 实现此功能...

对于 forceNetwork():

library(networkD3)
library(htmlwidgets)

data(MisLinks)
data(MisNodes)

fn <- forceNetwork(Links = MisLinks, Nodes = MisNodes, Source = "source", 
                   Target = "target", Value = "value", NodeID = "name",
                   Group = "group")

onRender(fn, "function(el,x) { d3.selectAll('.node').on('mouseover', null); }")

对于 diagonalNetwork()radialNetwork():

library(networkD3)
library(htmlwidgets)

URL <- paste0("https://cdn.rawgit.com/christophergandrud/networkD3/",
              "master/JSONdata//flare.json")

Flare <- jsonlite::fromJSON(URL, simplifyDataFrame = FALSE)
Flare$children = Flare$children[1:3]

rn <- radialNetwork(List = Flare, fontSize = 10, opacity = 0.9)
onRender(rn, "function(el, x) { d3.selectAll('.node').on('mouseover', null); }")

dn <- diagonalNetwork(List = Flare, fontSize = 10, opacity = 0.9)
onRender(dn, "function(el, x) { d3.selectAll('.node').on('mouseover', null); }")

关于javascript - 如何禁用 networkD3/d3Network 网络图中的鼠标悬停效果(GNU R 包),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51051574/

相关文章:

javascript - div 元素在单击时会淡化(或过渡)页面的背景颜色

r - 高效的R代码,用于查找与向量中的唯一值相关的索引

R-根据其他列中的非空行合并多列中可变数量的行

javascript - 在同一个 html 页面上使用不同的 D3 版本

javascript - 基于坐标的请求不起作用

javascript - 捆绑 onclick() 函数,使用事件监听器更改

javascript - d3js 无需拖动即可移动节点

javascript - 我想以月格式绘制 x 轴..通过此代码,我可以逐年绘制

javascript - 如何向 JavaScript 中的字符串添加新方法?

rCharts HighCharts 如何为区域着色