小编JL *_*ers的帖子

d3 按 id 值将对象数组数据绑定到加载的 svg

我已经研究了针对我的特定难题的几个可能的答案,但尚未找到完美的解决方案。这次交流最接近目标,其中 Josh 展示了一种使用 d3 的 .datum 临时将现有 svg 的 id 与其data绑定的简单方法。然后,他使用 .data key 函数根据简单数组数组中的匹配值来更新数据。

我正在尝试做类似的事情,但是使用一系列对象。但由于某种原因,我的关键函数找不到我正在寻找的对象值。如果我像乔什一样使用数组的数组,没问题。我想我可能需要使用 d3.values 或 d3.entries;但看起来情况并非如此。

任何帮助是极大的赞赏!

我的 svg 有一堆 g 元素,其中包含 id 属性的状态缩写(例如......这些组充满了路径。

我的数据数组如下所示:

var data = [
{

  "st" : "MI",
  "state" : "Michigan",
  "someValue" : 0.067
},
{
  "st" : "CA",
  "state" : "California",
  "someValue" : 0.111
},
etc.}];
Run Code Online (Sandbox Code Playgroud)

我尝试将数据绑定到 SVG g 元素,如下所示:

$("#map").load("mymap.svg", function() {
    var theMap = d3.selectAll("#map svg g")
      .datum(function(d) { return [d3.select(this).attr("id")]; })
      .data(data, function(d){ return …
Run Code Online (Sandbox Code Playgroud)

javascript arrays svg d3.js

0
推荐指数
1
解决办法
1839
查看次数

标签 统计

arrays ×1

d3.js ×1

javascript ×1

svg ×1