D3.js,csv和foreach未定义的值

时间:2013-01-13 12:14:23

标签: javascript csv d3.js

我正在尝试D3.js,我有一点问题。 这是我的剧本:

<!DOCTYPE html>
<meta charset="utf-8">
<body>
    <script src="http://d3js.org/d3.v3.js"></script>
    <script>
        d3.csv("result-do-nothing.csv", function(error, data) {
            data.forEach(function(d) {
                console.log(d);
                console.log(d.nb);
                console.log(d.memory);
                console.log(d.memory_peak);
            });
        });
    </script>
</body>

这是CSV

nb, memory, memory_peak
0,0.809,0.822,
100,0.779,1.072,
200,0.656,1.072,
300,0.656,1.072,
400,0.656,1.072,
500,0.656,1.072,

所以,当我运行脚本时,

  • console.log(d)输出Object {nb: "0", memory: "0.809", memory_peak: "0.822"} =&gt;尼斯
  • console.log(d.nb)输出0 =&gt;尼斯
  • console.log(d.memory)输出undefined =&gt;为什么?
  • console.log(d.memory_peak)输出undefined =&gt;为什么?

我和FF和Chrome有同样的问题。 我真的不明白为什么。 顺便说一句,我也尝试d['memory'],重命名列,删除/添加csv中的尾随,。什么都不行

编辑:我就是这样的菜鸟。 csv标头中有额外的空格:memory而不是memory

1 个答案:

答案 0 :(得分:3)

csv标头中有额外的空格:memory而不是memory