【问题标题】:D3 TSV Column AccessD3 TSV 列访问
【发布时间】:2014-03-04 17:11:50
【问题描述】:

我正在关注此处的 D3 示例:http://bl.ocks.org/mbostock/3883245。我正在从远程服务器请求 TSV 来创建图形。我知道这工作正常,因为图表会在给定的时间自动更改其 x 轴。问题是 TSV 的列之一是:temperature [C]。我更改了示例中的值以匹配 TSV,但它不起作用,我认为它不喜欢空格:

d3.tsv(tsvDataURL, function(error, data) {

                   data.forEach(function(d) {
                                d.time = parseDate(d.time);
                                d.temperature [C] = +d.temperature [C];
                                });

                   x.domain(d3.extent(data, function(d) { return d.time; }));
                   y.domain(d3.extent(data, function(d) { return d.temperature [C]; }))

...

是否有一种简单的方法可以让我通过索引访问列,例如d[2]; 以获取第二列?我以前试过这个,但它没有按预期工作。请原谅我的 JS 技能薄弱,我对整个语言都很陌生。

【问题讨论】:

    标签: javascript charts d3.js tsv


    【解决方案1】:

    对于包含空格或特殊字符的对象键,不能使用“点”表示法,而是使用方括号表示法:

    d["temperature [C]"] = +d["temperature [C]"];
    

    为了使您的其余代码更容易,您还可以给变量一个新名称:

    d.temp = +d["temperature [C]"];
    

    然后您可以在其余代码中使用d.temp

    【讨论】:

      猜你喜欢
      • 2017-03-31
      • 2014-03-16
      • 1970-01-01
      • 2017-11-29
      • 2023-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-03
      相关资源
      最近更新 更多