D3.js:如何从JSON文件/端点分离JSON数据

时间:2014-01-28 17:55:05

标签: d3.js

我希望函数能够在给定JSON文件的路径或直接给定JSON数据的情况下可视化图形。有没有标准的方法呢?我现在能想到的是解析参数,如果它以“.json”结尾,则传递给d3.json(),否则直接将数据传递给graph.data()。

或者也许做错误的事情?

e.g。

d3.json(data, function(error,data){

    if (error)
       //bind data directly

});

1 个答案:

答案 0 :(得分:1)

所以听起来你有以下情况:

你有一个功能

function draw_graph(data) {
  // whatever you need to do to draw the graph
}

然后

function maybe_xhr_and_then_draw_or_just_draw(path_or_data) {
  if(is_remote(path_or_data)) {
    d3.json(path_or_data, draw_graph)
  } else {
    draw_graph(path_or_data)
  }
}

问题是“is_remote看起来像什么?”

如果我有这个权利,那么你基本上就是在询问如何输入嗅觉,这是一种像javascript这样的语言的可疑想法(请参阅here了解原因)。

如果你坚持,那么你可以这样做:

function is_remote(path_or_data) {
  return !(path_or_data instanceof Object)
}