大数据可视化使用“search,显示上下文,按需扩展”的概念

我试图想象存储在数据库中的真正巨大的networking(3M节点和13M边缘)。 对于实时交互性,我打算只显示基于用户查询的图的一部分,并按需扩展。 例如,当用户点击一个节点时,我扩大它的邻域。 (本文中称为“search,显示上下文,按需扩展”)。

我研究过几个可视化工具,包括Gephi , D3等。他们把一个文本文件作为input,但我不知道如何连接数据库并根据用户的交互更新graphics。

链接文件实现了这样一个系统,但他们没有描述他们正在使用的工具。

我怎样才能以上述标准可视化这些数据?

有几个解决scheme,但基本上每个人都使用相同的方法:

  1. 在源代码上创build图层,让您在高层次上进行查询
  2. 创build一个前端层与上面解释的级别交谈
  3. 使用你想要的可视化工具

正如miro marchi所指出的那样,有几个解决scheme可以实现这个目标,其中一些解决schemelocking在特定的数据源上,而另外一些则具有更多的自由度,但这需要一些编码技巧。

数据源

我会从源types的select开始:从数据types可能我会selectNeo4J,泰坦或OrientDB(如果你喜欢更具有某种灵活性的外来东西)。 他们都提供JSON REST API,前者使用专有的系统和语言(Cypher),另外两个使用Blueprint / Rexster系统。 Neo4J支持Blueprint栈,如果你喜欢Cypher上的Gremlin。

对于其他解决scheme,这样的其他解决scheme可能需要使用相对REST API编码上面的一层,但是它也可以工作 – 我不会推荐您使用这种数据。

现在只剩下第三点,在这里你有几个select。

通用Viz工具

  • Sigma.js是一个免费的开源graphics可视化工具,相当不错。 据我所知,Linkurious正在使用它的一个fork版本。

  • Keylines是一个商业graphics可视化工具,具有先进的风格,分析和布局,如果您使用的是Neo4J或Titan ,他们可以提供复制/粘贴演示。 它不是免费的,但它支持甚至更旧的浏览器 – IE7以上…

  • VivaGraph是graphics可视化工具的另一个免费的开源工具 – 但与SigmaJS相比,它拥有更小的社区。

  • D3.js是数据可视化的事实,基本上可以做到基本上每一种可视化,但是学习曲线非常陡峭。

  • Gephi是另一个免费和开源的桌面解决scheme,你必须使用外部插件,但它确实支持大部分的格式 – graphML,CSV, Neo4J等等。

供应商特定

  • Linkurious是一个商业Neo4J特定的完整工具来search/调查数据。

  • Neo4Jnetworkingpipe理控制台 – 即使它是基本的,他们已经改进了很多,基于D3.js的新版本2.xx。

还有其他的解决办法,我可能忘了提到,但上面的应该提供了一个很好的变化。

其他节点

由于JS的限制,上面的JS工具将一次可视化多达1500/2000个节点。
如果你想展示更大的东西,而扩大,我会推荐像Gephi这样的桌面解决scheme。

放弃

我是Keylines开发团队的一员。