我正在使用带有cypher插件的Sigma.js来可视化我的neo4j数据库。按照这里的简单示例https://github.com/jacomyal/sigma.js/blob/master/examples/load-neo4j-cypher-query.html,它运作良好。我编辑了插件,以便显示的图形标签是我的neo4j节点的名称,但是我还想在单击标签或节点时显示其他节点属性。我对JavaScript很新,所以想知道这是不是像我这样的初学者可以这样做,如果它是我开始的最佳位置。
答案 0 :(得分:0)
您必须在点击或悬停节点上注册活动。 事件的sigmajs有一个例子:https://github.com/jacomyal/sigma.js/blob/master/examples/events.html
这是一个简短的代码,演示如何制作它。根据需要替换警报方法。
sigma.bind('overNode', function(event) {
alert(event.data.node);
});
如果您只想发现数据库,请查看tank-browser:https://www.npmjs.com/package/tank-browser
干杯
答案 1 :(得分:0)
您必须修改Cypher插件
首先:定义var let假设我们将在文件开头称它为“has”。
第二:你应该在你的html中添加ul并为其添加名为'popover'的类
第三:添加到cypherCallback方法你应该在其他内部添加if(typeof sig ==='object')
sig.graph.read(graph);
sig.bind('clickNode', function(e) {
var clicknode = e.data.node;
// empty the printed list
$('.popover').empty();
has='';
// create the tlis tof prop. from returend Object
for(var keys in clicknode.neo4j_data ){
$('.popover').append(' <li>' + keys + ' = '+ clicknode.neo4j_data[keys] + '</li>');
has+= 'n.' +keys + '="'+ clicknode.neo4j_data[keys] + '"AND ';
}
$('.popover').show();
});
sig.bind('clickStage', function(e) {
$('.popover').hide();
});