使用Java创建JSON数据NVD3图表

时间:2014-10-11 02:33:14

标签: java json nvd3.js

我在NVD3图表上工作,需要为图表创建JSON数据,如下所示:

[{ 
  "key" : "North America" , 
  "values" : [ [ 1025409600000 , 23.041422681023] , [ 1028088000000 , 19.854291255832] ]
},

{ 
  "key" : "Africa" , 
  "values" : [ [ 1025409600000 , 23.041422681023] , [ 1028088000000 , 19.854291255832] ]
},

{ 
  "key" : "South America" , 
  "values" : [ [ 1025409600000 , 23.041422681023] , [ 1028088000000 , 19.854291255832] ]
}]

有人请帮助我使用Java创建上面的JSON数据,因为我试图创建这个结构,因为最近3个小时还没有成功。

以下是Plunker链接:Stacked Area Chart NVD3

以下是我想在JAVA中创建的实时JSON数据示例:JSON example data

2 个答案:

答案 0 :(得分:1)

以下是我自己找到的解决方案:

import org.json.JSONArray;
import org.json.JSONObject;

public class CreateNVD3JSONDataJava {

public static void main(String[] args) {

    JSONObject jo = new JSONObject();
    jo.put("values", new JSONArray(new Long[][]{{1025409600000L,23L},{1028088000000L,19L},{1030766400000L,21L},{1033358400000L,22L}}));     
    jo.put("key", "North America");     

    JSONArray ja = new JSONArray();
    ja.put(jo);
    ja.put(jo); 
    ja.put(jo); 

    System.out.println(ja);
  }
}

答案 1 :(得分:0)

编辑代码:

import org.json.JSONArray;
import org.json.JSONObject;

public class CreateNVD3JSONDataJava {

public static void main(String[] args) {

    JSONArray ja = new JSONArray();

    JSONObject jo = new JSONObject();
    jo.put("values", new JSONArray(new Long[][]{{1025409600000L,23L},{1028088000000L,19L},{1030766400000L,21L},{1033358400000L,22L}}));     
    jo.put("key", "North America"); 
    ja.put(jo);

    jo = new JSONObject();
    jo.put("values", new JSONArray(new Long[][]{{1025409600000L,23L},{1028088000000L,19L},{1030766400000L,21L},{1033358400000L,22L}}));     
    jo.put("key", "Africa");
    ja.put(jo);

    jo = new JSONObject();
    jo.put("values", new JSONArray(new Long[][]{{1025409600000L,23L},{1028088000000L,19L},{1030766400000L,21L},{1033358400000L,22L}}));     
    jo.put("key", "South America");
    ja.put(jo);         

    System.out.println(ja);

  }
}

输出:

[
{
    "values": [
        [
            1025409600000,
            23
        ],
        [
            1028088000000,
            19
        ],
        [
            1030766400000,
            21
        ],
        [
            1033358400000,
            22
        ]
    ],
    "key": "North America"
},
{
    "values": [
        [
            1025409600000,
            23
        ],
        [
            1028088000000,
            19
        ],
        [
            1030766400000,
            21
        ],
        [
            1033358400000,
            22
        ]
    ],
    "key": "Africa"
},
{
    "values": [
        [
            1025409600000,
            23
        ],
        [
            1028088000000,
            19
        ],
        [
            1030766400000,
            21
        ],
        [
            1033358400000,
            22
        ]
    ],
    "key": "South America"
  }
]