javascript - 使用 JavaScript 和/或 D3.js 在对象数组中获取给定键的所有值

标签 javascript d3.js

我正在构建一个使用 D3.js 制作图表的仪表板。我有大量的对象。每个对象有 32 个键值对,具有相同的键。没有人知道获取给定键的所有值的好方法吗?

编辑: 我一问这个问题,一个简单的功能就出现了。还认为可能已经存在我没有找到的功能。

function getValues(data, key){
  var values = [];

  data.forEach(function(d){
    var v = d[key];

    if(!d3.set(values).has(v)){
      values.push(v);
    }
  })

  return values;
}

最佳答案

如果您已经在使用 d3,请查看 Mike Bostock 的“Underscore Equivalents”要点:https://gist.github.com/mbostock/3934356

所以

data.map(function(d) { return d[key]; });

将为您提供所有值。如果您只想要唯一值,请使用

d3.set(data.map(function(d) { return d[key]; })).values());

关于javascript - 使用 JavaScript 和/或 D3.js 在对象数组中获取给定键的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22355466/

相关文章:

javascript - 判断号码所属的桶

javascript - D3.js 边界框问题 - 强制勾选功能

javascript - 在指令中调用 $setViewValue 不会在 Controller 中触发 $watch

javascript - jquery增加附加行中子级的id和名称

javascript - Ionic 2 项目中的 "Property _ does not exist on _ type"D3.js typescript 错误

javascript - y 轴的 D3.js 动态数据/带宽标签

javascript - 如何旋转外部对象

javascript - 如何将 2 个 OpenLayer 标记动画添加到页面? Clickevent似乎被覆盖了

php - 在 php 中加载页面时选择选项清除

javascript - 递归函数在 iOS 中提前结束