d3.sparql - 如何直接从D3js查询SPARQL端点?

时间:2013-03-08 15:58:44

标签: d3.js sparql

我喜欢基于来自SPARQL端点的RDF数据获取视觉效果。 d3是一个很好的补充,可以获得一个额外的外部数据加载器,它可以通过发出SPARQL查询来提取数据。

是否有人在这样的事情上工作?这样的企业有什么指针吗?还是我忽略了一个完全明显的解决方案?

3 个答案:

答案 0 :(得分:8)

d3sparql项目实际上可以根据SPARQL查询的结果创建d3可视化。

以下是它自我描述的方式:

  

JavaScript本身适用于查询SPARQL端点,该端点提供以JSON格式返回结果的REST服务。 d3sparql.js库提供了通过Ajax调用(XMLHttpRequest)执行SPARQL查询的功能,以及D3库对结果的可视化。基本上,这个库将SPARQL查询结果JSON格式(又名.application / sparql-results + json)转换为几种主要D3布局可以接受的JSON格式。许多例子都是从bl.ocks.org和bost.ocks.org借来的。

主页:http://biohackathon.org/d3sparql/

源代码:https://github.com/ktym/d3sparql

答案 1 :(得分:5)

首先,我也是!我绝对希望在d3中看到SPARQL查询功能(实际上是任何RDF或SPARQL功能)。 据我所知,没有类似的东西存在。

目前暂时:查看this question,了解如何使用jQuery访问SPARQL端点

,您可能希望详细了解同源策略如何使用JSONP 规避它。这个article at IBM developerWorks是一个很好的介绍。

看一下sgvizler.jssource)的实现情况可能会很有趣。

答案 2 :(得分:3)

我终于开始创建一个d3-sparql插件,它是根据d3 v4插件架构构建的。 (A d3 v3 version也可用。)

Download并将插件添加到您的项目中:

<script src="d3-sparql.min.js"></script>

指定端点和* query&#34;获取准备用于d3可视化的数据

d3.sparql(endpoint, query, function (error, data) {
  console.log(data);
}

该插件还会在等效的JavaScript Date()Number()中投射RDF数据类型。