为什么d3.json会返回"空”;

Why does d3.json return "null"?

本文关键字:quot 返回 d3 json 为什么      更新时间:2023-09-26

我有两个JSON文件,它们是来自NetworkX的节点链接转储。

其中一个被称为CCD_ 1。另一种称为arcage.json。里面的数据基本上是等价的。force2.json包含的节点链路比arcage.json多,但两者都被NetworkX的转储

json_graph.node_link_data(graph) 

然后是

json.dump(jsongraph, open('viz/agearc.json','w')) #(or force2.json)

在我的javascript文件中,当我使用:时

d3.json('force2.json', function(d) {
    console.log(d) })

我可以正确地检查图形对象。

然而,当我这样做时:

d3.json('arcage.json', function(d) {
    console.log(d) })

我收到null退货。我无法解释为什么——有人能帮我吗?

对于记录,arcage.json是无向图,而force2.json是有向图。这两个图具有基本相同的节点链接信息,不同之处在于arcage.json在节点中有一个额外的文本属性,在链接中也有一个附加的文本属性。

我还查看了inter-web以获得帮助,发现我需要运行一个HTTP服务器。我正在做这件事(工作目录中的python -m http.server),并且我只在本地工作。

编辑:

原始数据可在此处获得:

  • 网址:www.ericmajingling.com/science/minto_america/arcage.json
  • force2:www.ericmajingling.com/science/minto_america/force2.json

事实证明,罪魁祸首是存在无效的JSON。我的数据中有一个force2.json0值。

对于所有像我一样的新手,如果你有像我这样的错误,请不要忘记检查NaN,并在里面输入一个合适的值!我希望这能省去你的麻烦!