【问题标题】:Display neo4j node properties with Sigma.js使用 Sigma.js 显示 neo4j 节点属性
【发布时间】:2015-08-10 13:08:19
【问题描述】:

我正在使用 Sigma.js 和 cypher 插件来可视化我的 neo4j 数据库。在遵循https://github.com/jacomyal/sigma.js/blob/master/examples/load-neo4j-cypher-query.html 此处的简单示例之后,它运行良好。我编辑了插件,以便显示的图形标签是我的 neo4j 节点的名称,但是我还想在单击标签或节点时显示其他节点属性。我对 JavaScript 很陌生,所以想知道这是否对于像我这样的初学者来说是可能的,如果这是我最好的起点。

【问题讨论】:

    标签: javascript neo4j sigma.js


    【解决方案1】:

    您必须在点击或悬停节点上注册一个事件。 事件的 sigmajs 中有一个示例:https://github.com/jacomyal/sigma.js/blob/master/examples/events.html

    这是一个演示如何制作的简短代码。用你想要的替换 alert 方法。

    sigma.bind('overNode', function(event) {
      alert(event.data.node);
    });
    

    如果你只是想发现你的数据库,看看 tank-browser : https://www.npmjs.com/package/tank-browser

    干杯

    【讨论】:

      【解决方案2】:

      你必须编辑Cypher插件

      首先:定义 var 假设我们将在文件的开头将其称为“has”。

      第二:你应该在你的 html 中添加 ul 并添加一个名为 'popover' 的类

      第三:添加到 cypherCallback 方法中你应该添加到 else 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();
                 });
      

      【讨论】:

        猜你喜欢
        • 2018-11-04
        • 2014-03-11
        • 1970-01-01
        • 2015-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-30
        • 1970-01-01
        相关资源
        最近更新 更多