2017-07-13 57 views
1

我要繪製基於以下JSON C3js餅圖(從收到的HQL,冬眠的Java遊戲框架)... JSON看起來是這樣的(這是動態數據):如何繪製c3js餅圖上定製的JSON數據?

{"ug":["K","M2","M3","M4"],"wtv":[10,20,35,60]} 

HTML:

<div id="chart"></div> 

JS(我真的試圖):

var json ={"ug":["K","M2","M3","M4"],"wtv":[10,20,35,60]}; 
var ug =json.ug; 
var wtv=json.wtv;  
var chart = c3.generate({ 
    data: { 
     json: { 
      ug:wtv[0], 
      ug1:wtv[1], 
      ug2:wtv[2], 
      ug3:wtv[3], 
     }, 
     type : 'pie', 
    } 
}); 

Here is a fiddle for reference.

在ug,ug1,ug2,ug3的地方我需要K,M2,M3,M4(需要注意的是動態數據) 任何人都可以幫助我操縱數據來根據需要繪製餅圖嗎? 我希望在後端更改JSON的結構不是唯一的解決方案(雖然這對我來說很困難)。任何其他解決方案,讚賞。

回答

1

只要"ug""wtv"有相同數量的元素...

var json = {"ug":["K","M2","M3","M4"],"wtv":[10,20,35,60]}; 
var pieJson = {}; 
json.ug.forEach(function (ug, index) { 
    pieJson[ug] = json.wtv[index]; 
}); 

var chart = c3.generate({ 
    data: { 
    // iris data from R 
    json: pieJson, 
    type : 'pie', 
    } 
}); 

jsfiddle.net/4h4z00g7/

+0

它確實。感謝您的時間和幫助:) – Venky