我有一个像这样的JSON数据集:
"document": [
{
"id": "123",
"date": "01/01/2001"
},
{
"id": "124",
"date": "01/01/2001"
},
{
"id": "125",
"date": "02/01/2001"
},
{
"id": "126",
"date": "31/01/2001"
},
{
"id": "127",
"date": "31/01/2001"
}
]
我需要创建一个显示文档计数/时间的区域图表。
那么,我是否需要将数据预处理为以下内容:
"document": [
{
"date": "01/01/2001",
"count": 2
},
{
"date": "02/01/2001",
"count": 1
},
{
"date": "31/01/2001",
"count": 2
}
]
或者,D3会以某种方式自动为我做这件事吗?看起来它可以做的事情类型?
非常感谢
麦克
答案 0 :(得分:1)
您正在寻找d3.nest:
> d3.nest()
.key(function(d){ return d.date; })
.rollup(function(leaves) { return leaves.length; })
.entries(data)
[{"key":"01/01/2001","values":2},
{"key":"02/01/2001","values":1},
{"key":"31/01/2001","values":2}]
(数据应设置为等于您发布的数组)
一些examples and explanations来补充办公室文档。