我喜欢基于来自SPARQL端点的RDF数据获取视觉效果。 d3是一个很好的补充,可以获得一个额外的外部数据加载器,它可以通过发出SPARQL查询来提取数据。
是否有人在这样的事情上工作?这样的企业有什么指针吗?还是我忽略了一个完全明显的解决方案?
答案 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借来的。
答案 1 :(得分:5)
首先,我也是!我绝对希望在d3中看到SPARQL查询功能(实际上是任何RDF或SPARQL功能)。 据我所知,没有类似的东西存在。
目前暂时:查看this question,了解如何使用jQuery访问SPARQL端点。
,您可能希望详细了解同源策略和如何使用JSONP 规避它。这个article at IBM developerWorks是一个很好的介绍。
看一下sgvizler.js(source)的实现情况可能会很有趣。
答案 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数据类型。