【问题标题】:data parsing using a csv file in d3在 d3 中使用 csv 文件解析数据
【发布时间】:2014-04-30 03:28:02
【问题描述】:

请考虑链接Labeling the axis with alphanumeric characters 中显示的示例。这是解析 var 数据的正确方法吗?

var data = []
d3.csv("data.csv", function(data) {
    data = data.forEach(function(d) { return [ x[d[0]], y[d[1]]] });
    console.log(data)
});

data.csv 应该保存这些值

[2, 2],
[3, 3],
[4, 4],
[5, 4],
[5.5, 5],
[6, 6],
[6, 7],
[6.5, 8],
[6.5, 16],
[17, 16]

【问题讨论】:

  • 我不清楚你所说的“解析”是什么意思,但是不,你发布的代码不起作用。
  • 我希望数据值来自外部 csv 文件,即在此示例中从 csv 文件加载数据。

标签: javascript html csv svg d3.js


【解决方案1】:

假设您的意思是 data 应该保存这些值,那么您的 data.csv 应该如下所示:

first,second
2,2
3,3
4,4
5,4
5.5,5
6,6
6,7
6.5,8
6.5,16
17,16

然后您可以使用字段名称对其进行解析:

var data = []
d3.csv("data.csv", function(csvData) {
    // By default, all the values read are treated as strings.
    // So have to make them numbers explicitly
    data = csvData.forEach(function(d) { return [ +d.first, +d.second ] });
    console.log(data);

    // Draw the chart here.
});

【讨论】:

  • 我没有得到输出,我得到一个没有任何数据点的空白图表。
  • @user3438326 日期读取是否正确(查看console.log 进行检查)?如果是这样,那么您是否在回调外部绘制图表?获取csv 文件的调用是异步进行的,d3.csv 回调之外的任何代码都将在获取数据之前执行。
  • *TypeError: n 未定义。我在控制台中收到此错误
猜你喜欢
  • 2016-07-04
  • 1970-01-01
  • 2017-03-21
  • 1970-01-01
  • 2023-03-23
  • 2014-03-30
  • 1970-01-01
  • 2012-09-08
  • 1970-01-01
相关资源
最近更新 更多