D3数据结构? (便于查找,数据操作和选择)

时间:2014-02-10 10:41:13

标签: javascript data-structures d3.js

我正在探索有助于开发更大的D3应用程序的数据结构和库。

我从多个csv文件中获取数据,并希望以一致的方式将数据存储在javascript中(数组/对象/其他),这样我就可以简化查找,数据操作并使用D3选择

我目前正在考虑使用以下密钥存储数据:

var people = {
        A : { id: 'A', name: 'Joe'},
        B : { id: 'B', name: 'Sam'},
        C : { id: 'C', name: 'Eve'}
    };

通过这种方式,我可以快速查找并使用例如d3.values()轻松展平结构。

有更好的选择吗? 这种方法的优点和缺点是什么?

1 个答案:

答案 0 :(得分:1)

这实际上取决于您的应用程序需要什么样的数据结构,因此这个问题没有一般的答案。它看起来好像你所拥有的东西非常适合你想在D3中做的最常见的操作,即

  • 将数据传递给.data()以附加/更新元素 - 为此您需要一个数组,但您的数据结构可以轻松转换为使用例如d3.entries()
  • 交叉引用来自其他对象的数据 - 这通常通过查找来完成,对于这些数据,您的数据结构也适用于按ID索引。