包含静态和动态数据的多对象JSON

时间:2016-12-28 20:39:09

标签: json database d3.js time-series

我在excel中有超过100万行数据,我想将其转换为JSON,因此我可以使用D3js和其他基于Web的应用程序对其进行可视化。数据由两个子集组成:

  • 每个数据点的一般信息,包括地理位置,ID ....(静态数据一旦写入就不会改变)
  • 每个数据点的每月测量值。一旦新数据到达,该数据集每月更新

这就是数据的样子:

  

ID:2411976,州:德克萨斯州,郡:DEWITT,纬度:29经度:-96,   数据:11/1/2013 27.516; 12/1/2013 15.3566; 2014年1月1日27.6418;   2014年2月1日13.45; 2014年3月1日11.21; 2014年4月1日20

     

ID:2321771,州:德克萨斯州,郡:DEWITT,纬度:29经度:-96,   数据:11/1/20134 19; 12/1/2014 21; 2015年1月1日30; 2015年2月1日50; 2015年3月1日10;   2015年4月1日5   .....

是否可以将所有数据点包装在一个包含时态数据和静态数据的JSON文档中?

1 个答案:

答案 0 :(得分:1)

这确实是可行的,因为您可以在嵌套结构中表示数组/对象,如下所示:

{
    "locations": [{
        "id": 2411976, 
        "state": "Texas",
        "county": "DEWITT", 
        "latitude": 29,
        "longitude":-96,
        "data": [{
            "date": "2013-11-01T00:00:00.000Z",
            "value": 27.516
        }, {
            "date": "2013-12-01T00:00:00.000Z",
            "value": 15.3566
        }, {
            "date": "2014-01-01T00:00:00.000Z",
            "value": 27.6418
        }, {
            "date": "2014-02-01T00:00:00.000Z",
            "value": 13.45
        }, {
            "date": "2014-03-01T00:00:00.000Z",
            "value": 11.21
        }, {
            "date": "2014-04-01T00:00:00.000Z",
            "value": 20
        }]
    }, {
        "id": 2321771, 
        "state": "Texas",
        "county": "DEWITT", 
        "latitude": 29,
        "longitude":-96,
        "data": [{
            "date": "2014-11-01T00:00:00.000Z",
            "value": 19
        }, {
            "date": "2014-12-01T00:00:00.000Z",
            "value": 21
        }, {
            "date": "2015-01-01T00:00:00.000Z",
            "value": 30
        }, {
            "date": "2015-02-01T00:00:00.000Z",
            "value": 50
        }, {
            "date": "2015-03-01T00:00:00.000Z",
            "value": 10
        }, {
            "date": "2015-04-01T00:00:00.000Z",
            "value": 5
        }]
    }]
}

这只是一种做法。根据此数据的消费者期望的输入,您可以相应地进行调整。