在 vis 中访问节点数据.js单击处理程序
Accessing node data in vis.js click handler
我有一个节点和边的网络图,并希望在点击节点数据后获取节点数据。
var network = new vis.Network(container, data, options);
network.on( 'click', function(properties) {
console.log('clicked node ' + properties.nodes);
});
但这只返回一些内部 id [105]。有没有办法获取与节点关联的实际数据?
您在属性中获取的节点 ID 不是"某个内部 ID",而是您自己定义的节点的 ID。您可以使用以下节点简单地从自己的DataSet
读取节点的数据:
var nodes = new vis.DataSet([...]);
var edges = new vis.DataSet([...]);
var data = {nodes: nodes, edges: edges};
var network = new vis.Network(container, data, options);
network.on( 'click', function(properties) {
var ids = properties.nodes;
var clickedNodes = nodes.get(ids);
console.log('clicked nodes:', clickedNodes);
});
如何获取单击的节点并从该节点检索节点信息:
network.on( 'click', function(properties) {
var nodeId = network.getNodeAt({x:properties.event.srcEvent.offsetX, y:properties.event.srcEvent.offsetY});
var node = nodes.get(nodeId);
});
相关文章:
- js - 单击时交换图像
- 动态.js单击画布外的按钮时从画布中删除图像
- 使用音频.js单击按钮下载音频
- 使用 D3.js 单击圆圈时生成阴影
- 挖空 JS - 单击数组中的图像
- JS单击事件不适用于暂停CSS动画
- d3.js单击时交替颜色,单击另一个点时变回原始颜色
- 在淘汰赛中更改 css 类.js单击鼠标
- 在 vis 中访问节点数据.js单击处理程序
- 使用 Meteor.js 单击时将类添加到特定元素
- 高图表 js 单击旋转并展开弧线
- 添加新图表.js单击按钮时,但得到“无法读取空的属性'getContext'”
- 三.js 单击时获取相对于此值的对象(对象都在数组中)
- d3.js:单击时更改 x 轴间隔
- 使用 d3.js 单击时分解饼图
- 使用角度JS单击时更改目标的属性
- d3.js单击时更改数据(圆环图的多个实例)
- 挖空.js单击按钮后使用数据创建新记录
- Knockout.js单击时更改(而不是切换)css类
- Js.单击以编程方式添加的事件,但在加载代码时仅触发一次