如何在另一个站点中嵌入neo4j图?

Pet*_*ert 3 web-applications data-visualization neo4j graph-databases

背景

我一直在使用neo4j来查询相当大(但最终不复杂)的数据集.我正在将cypher直接写入Web界面,并在文本文件(old-skool)中跟踪我的查询.

问题

我喜欢我回来的结果,所以我想采取另一个步骤并围绕它建立一个更严格的界面,以便我可以将它交给非技术人员来探索一些预先编程的参数中的数据.

我已经阅读了node4j API参考,我确信我可以从头开始构建一个接口,结合使用D3进行布局,并使用(例如)node.js中的seraph或neo4j ruby​​gem构建后端中间件应用程序.

但是,标准的neo4j web界面非常好,我想知道我是否可以进一步利用它并将查询结果(包括强制导向图)嵌入我的应用程序中,而不是从头开始?

可能的方法

这种方法有优先权吗?我想旅程将是这样的:

  • 在我的第三方应用中构建查询
  • 查询neo4j服务器
  • 接收iframe(或其他?)响应
  • 在第三方页面中嵌入响应

对此有任何建议都是王牌.

Mic*_*ger 6

查看http://neo4j.com/developer/guide-data-visualization

它解释了如何自己完成,但也链接到您可以使用的其他工具和框架.

您还可以查看http://jexp.github.io/cy2neo,了解我之前创建的一个示例.

通常,大多数javascript图形可视化框架都易于使用.


cyb*_*sam 3

您应该看看Neo4j GraphGists,它是出于相同目的而创建的。

[已编辑]

如果您想使用 GraphGists 访问您自己的数据库,这似乎是可能的。警告:我自己还没有尝试过。

  • GraphGist 是开源的,您可以在自己的计算机/服务器上本地运行它。
  • 查看GraphGist安装脚本,您可以看到它克隆了另一个neo4j开源项目,名为rabbithole
  • Rabbithole 的自述文件指出,您可以将其配置为“公开”本地数据库:

    本地执行的潜在论据:

    java org.neo4j.community.console.Console port /path/to/db [expose]
    
    Run Code Online (Sandbox Code Playgroud)

    (“expose”将写入和读取图形数据库,否则它将把图形内容复制到内存数据库中)

  • 在rabbithole的pom文件底部附近,您可以配置rabbithole:

                <mainClass>org.neo4j.community.console.Console</mainClass>
                <!--arguments>
                  <argument>argument1</argument>
                </arguments-->
    
    Run Code Online (Sandbox Code Playgroud)
    • 理论上,如果您替换argument1port /path/to/db expose(并取消注释该arguments标签),您将使用自己的本地数据库。