例子数据结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | { "categories":[ "苹果", "三星", "小米", "oppo", "vivo" ], "series":[ { "name":"手机品牌", "data":[ 1000879, 3400879, 2300879, 5400879, 3400879 ] } ] } |
源数据
1 2 3 4 | public static void main(String[] args) { String str = "{\"id\":168,\"userId\":\"1\",\"name\":\"设备时间统计\",\"categoryName\":\"数据可视化\",\"userName\":null,\"loginName\":null,\"data\":\"{\\\"datasetId\\\":52,\\\"config\\\":{\\\"valueAxis\\\":\\\"vertical\\\",\\\"chart_type\\\":\\\"line\\\",\\\"keys\\\":[{\\\"col\\\":\\\"上线时间\\\",\\\"values\\\":[],\\\"sort\\\":\\\"asc\\\",\\\"id\\\":\\\"4393708c-f628-47fe-b4db-b7f762b902d7\\\",\\\"type\\\":\\\"eq\\\"}],\\\"values\\\":[{\\\"name\\\":\\\"\\\",\\\"series_type\\\":\\\"stackbar\\\",\\\"type\\\":\\\"value\\\",\\\"cols\\\":[{\\\"col\\\":\\\"id\\\",\\\"alias\\\":\\\"数量\\\",\\\"aggregate_type\\\":\\\"count\\\"}]}],\\\"groups\\\":[{\\\"col\\\":\\\"cname\\\",\\\"values\\\":[],\\\"alias\\\":\\\"设备名称\\\",\\\"sort\\\":\\\"asc\\\",\\\"id\\\":\\\"1732b709-cabe-4390-aaed-65c3d74924e5\\\",\\\"type\\\":\\\"eq\\\"}],\\\"filters\\\":[],\\\"coordinateSystem\\\":\\\"cartesian2d\\\",\\\"option\\\":{}},\\\"expressions\\\":[],\\\"filterGroups\\\":[{\\\"filters\\\":[{\\\"col\\\":\\\"上线时间\\\",\\\"values\\\":[\\\"2020-07\\\",\\\"2020-08\\\",\\\"2020-09\\\",\\\"2020-10\\\",\\\"2020-11\\\",\\\"2020-12\\\"],\\\"type\\\":\\\"=\\\"}],\\\"id\\\":\\\"5c57ae8c-2973-4826-809f-61009c5e3570\\\",\\\"group\\\":\\\"2020年下半年\\\"}]}\",\"permission\":null,\"createTime\":1608591619000,\"updateTime\":1615535051000,\"widgetSql\":\"SELECT cname,上线时间,COUNT(id) as '数量' FROM (select *,DATE_FORMAT(create_date,'%Y-%m') '上线时间' from dv_stat_equipment) cb_view GROUP BY cname, 上线时间\"}\n"; String str2 = "[{\"上线时间\":\"2020-01\",\"数量\":12,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-02\",\"数量\":46,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-03\",\"数量\":34,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-04\",\"数量\":39,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-05\",\"数量\":38,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-06\",\"数量\":33,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-07\",\"数量\":34,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-08\",\"数量\":35,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-09\",\"数量\":35,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-10\",\"数量\":47,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-11\",\"数量\":47,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-12\",\"数量\":37,\"cname\":\"位移传感\"},{\"上线时间\":\"2020-01\",\"数量\":8,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-02\",\"数量\":37,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-03\",\"数量\":41,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-04\",\"数量\":36,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-05\",\"数量\":44,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-06\",\"数量\":31,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-07\",\"数量\":36,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-08\",\"数量\":42,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-09\",\"数量\":38,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-10\",\"数量\":46,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-11\",\"数量\":25,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-12\",\"数量\":41,\"cname\":\"压力传感\"},{\"上线时间\":\"2020-01\",\"数量\":14,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-02\",\"数量\":29,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-03\",\"数量\":39,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-04\",\"数量\":45,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-05\",\"数量\":43,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-06\",\"数量\":36,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-07\",\"数量\":31,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-08\",\"数量\":23,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-09\",\"数量\":58,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-10\",\"数量\":40,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-11\",\"数量\":45,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-12\",\"数量\":49,\"cname\":\"图像传感\"},{\"上线时间\":\"2020-01\",\"数量\":13,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-02\",\"数量\":33,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-03\",\"数量\":43,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-04\",\"数量\":34,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-05\",\"数量\":51,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-06\",\"数量\":25,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-07\",\"数量\":46,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-08\",\"数量\":46,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-09\",\"数量\":43,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-10\",\"数量\":38,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-11\",\"数量\":32,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-12\",\"数量\":50,\"cname\":\"声音传感\"},{\"上线时间\":\"2020-01\",\"数量\":14,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-02\",\"数量\":28,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-03\",\"数量\":38,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-04\",\"数量\":42,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-05\",\"数量\":38,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-06\",\"数量\":29,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-07\",\"数量\":53,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-08\",\"数量\":41,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-09\",\"数量\":50,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-10\",\"数量\":42,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-11\",\"数量\":34,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-12\",\"数量\":48,\"cname\":\"射频传感\"},{\"上线时间\":\"2020-01\",\"数量\":14,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-02\",\"数量\":30,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-03\",\"数量\":52,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-04\",\"数量\":36,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-05\",\"数量\":45,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-06\",\"数量\":25,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-07\",\"数量\":42,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-08\",\"数量\":47,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-09\",\"数量\":40,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-10\",\"数量\":42,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-11\",\"数量\":40,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-12\",\"数量\":40,\"cname\":\"惯性传感\"},{\"上线时间\":\"2020-01\",\"数量\":17,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-02\",\"数量\":39,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-03\",\"数量\":43,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-04\",\"数量\":32,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-05\",\"数量\":51,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-06\",\"数量\":26,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-07\",\"数量\":41,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-08\",\"数量\":39,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-09\",\"数量\":41,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-10\",\"数量\":44,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-11\",\"数量\":35,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-12\",\"数量\":41,\"cname\":\"气体传感\"},{\"上线时间\":\"2020-01\",\"数量\":10,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-02\",\"数量\":41,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-03\",\"数量\":45,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-04\",\"数量\":36,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-05\",\"数量\":41,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-06\",\"数量\":36,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-07\",\"数量\":45,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-08\",\"数量\":46,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-09\",\"数量\":46,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-10\",\"数量\":36,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-11\",\"数量\":37,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-12\",\"数量\":32,\"cname\":\"温度传感\"},{\"上线时间\":\"2020-01\",\"数量\":14,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-02\",\"数量\":44,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-03\",\"数量\":48,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-04\",\"数量\":46,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-05\",\"数量\":43,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-06\",\"数量\":59,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-07\",\"数量\":41,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-08\",\"数量\":35,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-09\",\"数量\":53,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-10\",\"数量\":45,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-11\",\"数量\":49,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-12\",\"数量\":43,\"cname\":\"湿度传感\"},{\"上线时间\":\"2020-01\",\"数量\":11,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-02\",\"数量\":37,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-03\",\"数量\":43,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-04\",\"数量\":37,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-05\",\"数量\":33,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-06\",\"数量\":34,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-07\",\"数量\":31,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-08\",\"数量\":37,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-09\",\"数量\":42,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-10\",\"数量\":27,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-11\",\"数量\":37,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-12\",\"数量\":46,\"cname\":\"红外传感\"},{\"上线时间\":\"2020-01\",\"数量\":9,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-02\",\"数量\":33,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-03\",\"数量\":45,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-04\",\"数量\":43,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-05\",\"数量\":45,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-06\",\"数量\":31,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-07\",\"数量\":45,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-08\",\"数量\":58,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-09\",\"数量\":39,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-10\",\"数量\":50,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-11\",\"数量\":45,\"cname\":\"速度传感\"},{\"上线时间\":\"2020-12\",\"数量\":43,\"cname\":\"速度传感\"}]"; } |
最后转成这样的
{
"series":[
{
"data":[
13,
33,
43,
34,
51,
25,
46,
46,
43,
38,
32,
50
],
"name":"声音传感"
},
{
"data":[
14,
44,
48,
46,
43,
59,
41,
35,
53,
45,
49,
43
],
"name":"湿度传感"
},
{
"data":[
14,
30,
52,
36,
45,
25,
42,
47,
40,
42,
40,
40
],
"name":"惯性传感"
},
{
"data":[
14,
29,
39,
45,
43,
36,
31,
23,
58,
40,
45,
49
],
"name":"图像传感"
},
{
"data":[
8,
37,
41,
36,
44,
31,
36,
42,
38,
46,
25,
41
],
"name":"压力传感"
},
{
"data":[
9,
33,
45,
43,
45,
31,
45,
58,
39,
50,
45,
43
],
"name":"速度传感"
},
{
"data":[
14,
28,
38,
42,
38,
29,
53,
41,
50,
42,
34,
48
],
"name":"射频传感"
},
{
"data":[
17,
39,
43,
32,
51,
26,
41,
39,
41,
44,
35,
41
],
"name":"气体传感"
},
{
"data":[
11,
37,
43,
37,
33,
34,
31,
37,
42,
27,
37,
46
],
"name":"红外传感"
},
{
"data":[
10,
41,
45,
36,
41,
36,
45,
46,
46,
36,
37,
32
],
"name":"温度传感"
},
{
"data":[
12,
46,
34,
39,
38,
33,
34,
35,
35,
47,
47,
37
],
"name":"位移传感"
}
],
"categories":[
"2020-01",
"2020-02",
"2020-03",
"2020-04",
"2020-05",
"2020-06",
"2020-07",
"2020-08",
"2020-09",
"2020-10",
"2020-11",
"2020-12"
]
}
优化json数组什么?