将基本CSV数据加载到D3

时间:2015-04-03 02:10:08

标签: javascript csv d3.js

我一直在尝试将一些数据从CSV加载到D3中。结构是:

variety, amount
a, 1
b, 3
c, 7

我正在尝试将数据量存入一个数组,但尝试了各种教程和论坛帖子中描述的所有方法都没有成功。

我试过了:

d3.csv("data.csv", function(data) {
    var dataset = console.log(data["amount"]);
});


var dataset = d3.csv("data.csv", function(data) {
    dataset = console.log(data["amount"]);
});


d3.csv("data.csv", function(data) {
    dataset = console.log(data.amount);
});


d3.csv("data.csv", function(data) {
    var dataset = console.log(data);
});


d3.csv("data.csv", function(data) {
    var dataset = data);
});


d3.csv("data.csv", function(data) {
            return {amount: +data};
});

d3.csv("data.csv", function(data) {
            dataset = data.map(function(d) { return [+d["amount"], +d["variety"]];});
});

如果其中一些尝试是荒谬的,我道歉,但我今天刚开始玩D3。谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

我有一个类似的plnkr给你,请注意加载d3 lib的地方。

<body>
  <script src="http://d3js.org/d3.v3.min.js"></script>
  ...

pnlkr

答案 1 :(得分:0)

问题在于逗号后面的空格。由于空间,它被视为&#34;量&#34;而不是&#34;金额&#34;。还要尝试安慰数据而不是数据[&#39;金额&#39;]。您将意识到它是一个对象数组而不仅仅是一个对象。因此,您必须遍历数组才能获得金额。

d3.csv("data.csv", function(data) {
  console.log(data);
  var len = data.length;
  for (var i = 0; i < len; i++) {
    console.log(data[i].amount);
  }
});