如何在 dc.js 上创建一个具有多个维度的组
How to create one group with multiple dimension on dc.js
我正在尝试使用 dc.js 库创建数据可视化。
但是我的数据有多个值字段。
这是我的部分数据:
[{"_1000_1249":0,"_1250_1499":2},{"_1000_1249":1,"_1250_1499":2},{"_1000_1249":2,"_1250_1499":3}]
我想用这样的数据键创建组(计算数据总和):
- "_1000_1249":3,(“_1000_1249”的总和
- "_1250_1499":7,("_1250_1499")
那么如何创建这样的 dc.js 行图表?
谢谢
我认为您应该重塑数据,使其更适合 Crossfilter 范式。以下内容应该可以满足您的需求:
var data = [{"_1000_1249":0,"_1250_1499":2},{"_1000_1249":1,"_1250_1499":2},{"_1000_1249":2,"_1250_1499":3}]
var updatedData = []
for(var i=0; i < data.length; i++) {
for(key in data[i]) {
updatedData.push({
key: key,
value: data[i][key]
})
}
}
var cf = crossfilter(updatedData)
var dimension = cf.dimension(function(d) { return d.key; })
var group = dimension.group().reduceSum(function(d) { return d.value; })
console.log(group.all())
如果您想进行实验,可以在此处的 JSFiddle 中找到:https://jsfiddle.net/esjewett/1d853fwj/3/
我正在尝试使用 dc.js 库创建数据可视化。
但是我的数据有多个值字段。
这是我的部分数据:
[{"_1000_1249":0,"_1250_1499":2},{"_1000_1249":1,"_1250_1499":2},{"_1000_1249":2,"_1250_1499":3}]
我想用这样的数据键创建组(计算数据总和):
- "_1000_1249":3,(“_1000_1249”的总和
- "_1250_1499":7,("_1250_1499")
那么如何创建这样的 dc.js 行图表?
谢谢
我认为您应该重塑数据,使其更适合 Crossfilter 范式。以下内容应该可以满足您的需求:
var data = [{"_1000_1249":0,"_1250_1499":2},{"_1000_1249":1,"_1250_1499":2},{"_1000_1249":2,"_1250_1499":3}]
var updatedData = []
for(var i=0; i < data.length; i++) {
for(key in data[i]) {
updatedData.push({
key: key,
value: data[i][key]
})
}
}
var cf = crossfilter(updatedData)
var dimension = cf.dimension(function(d) { return d.key; })
var group = dimension.group().reduceSum(function(d) { return d.value; })
console.log(group.all())
如果您想进行实验,可以在此处的 JSFiddle 中找到:https://jsfiddle.net/esjewett/1d853fwj/3/