2017-10-13 4 views
1

他の2つのディメンションで索引付けされたデータを使用して1つのディメンションのデータの合計を求める必要があるところで立ち往生しました。dc.jsの他の2つのディメンションのデータを比較してディメンション内のデータの合計

例:

"mode_device","method","discount","time","first_time","paid","p_id","p_sku" 
"Desktop","EBS",,"1344887090","1344887090","1079","8786","PPLB03571285" 
"Desktop","MOBIKWIK-WALLET","89","1474371140","1474371140","591","99068","PPLB009DCBBFREE" 
"AndroidApp","COD","97","1474371149","1438844849","647","72321","PPLB034601" 
"Desktop","JUSPAY","60","1474371158","1474371158","398","92389","PPLB713SQ306" 
"AndroidApp","COD","190","1474371247","1448993680","1261","72685","PLB0029regenerist3" 
"Desktop","JUSPAY","90","1474371346","1474371346","599","86728","PPLB66719804817" 
"Desktop","DEBITCARD","60","1474371366","1465733603","398","92389","PPLB713SQ306" 
"AndroidApp","COD","0","1474371404","1474371404","577","106032","PPLB0335PA0990NM" 
"Desktop","COD","43","1474371404","1468956726","356","13221","PPLB039605" 

ここでは、mode_devicemethodを比較して、我々は支払わからのデータの合計を返すことがあります。

例:AndroidAppとCODが数回繰り返すこと は、データ我々はグラフをdc.js使用して

Android-COD:468 
Android-Ebs:234 
Ios-COD:468 

のように返却する必要があり

"Android","COD","234" 
"Android","Ebs","234" 
"Ios","COD","234" 
"Ios","COD","234" 
"Android","COD","234" 

のようなものを持って言うことができます。

答えて

0

このデータをどのようにプロットしたいのかはっきりしません。両方のフィールドにラベルが付いた棒グラフですか?

しかし、あなたはmode_devicemethodの両方で集計したい場合は、単にそのキーに両方の値を使用するディメンションを作成することができます

var modeMethodDimension = cf.dimension(function(d) { return [d.mode_device, d.method].join('-'); }); 
var modeMethodGroup = modeMethodDimension.group(function(d) { return +d.paid; }); 

を今すぐグループが

[{key: 'Android-COD', value: 468}, {key: 'Android-Ebs', value: 234}, ...] 
のようなキーと値のペアを持つ必要があります

dc.barChartに入れると、それらのキーがバーの名前になります。

関連する問題