【问题标题】:creating functions and arrays inside d3.json()在 d3.json() 中创建函数和数组
【发布时间】:2020-06-16 07:39:16
【问题描述】:

我正在尝试使用 d3 重新创建在线发现的交互式数据可视化,但用我自己的不同数据集替换。

我有一个 JSON 文件,看起来像这样:

[{"1993": 22.001,
  "1994": 24.020,
  .
  .
  "2014": 29.010,
  "Country Name": "United States",
  "Indicator Name": "foo"},
{
...
}]

在我的 javascript 中,我正在尝试加载 JSON 的内容,并创建一个数组,其中包含与我的“指标名称”匹配的任何对象的特定年份(例如 1993 年)的值正在寻找。

d3.json("/static/Data/Untitled.json", function(data) {

            var data_1993 = []
            function select_data(data){
                for(var i = 0; i < data.length; i++){
                    if(data[i]['Indicator Name' == 'foo']){
                        console.log(data[i]['1993'])
                        data_1993.push(data[i]['1993'])
                    }
                }
                return data_1993
            }
            select_data(data)
            console.log(data_1993)

当我运行它时,data_1993 数组仍然是空的。如何根据特定条件将 json 文件中一年的数据推送到数组中?

【问题讨论】:

    标签: javascript json d3.js


    【解决方案1】:

    我认为你的 if 语句有问题

    这个:

    if(data[i]['Indicator Name' == 'foo'])
    

    应该是:

     if(data[i]['Indicator Name'] == 'foo')
    

    【讨论】:

    • 谢谢,我想肯定是语法错误..
    猜你喜欢
    • 2015-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 2018-04-28
    • 2015-04-28
    • 2016-01-25
    • 1970-01-01
    相关资源
    最近更新 更多