使用 D3 v3,我格式化了数据以匹配 Mike 的示例,以快速启动我的开发过程。示例页面在这里https://github.com/d3/d3-3.x-api-reference/blob/master/Stack-Layout.md https://github.com/d3/d3-3.x-api-reference/blob/master/Stack-Layout.md
var data = [
{
"name": "apples",
"values": [
{ "x": 0, "y": 91},
{ "x": 1, "y": 290}
]
},
{
"name": "oranges",
"values": [
{ "x": 0, "y": 9},
{ "x": 1, "y": 49}
]
}
];
然后我所要做的就是获得堆叠值
var stack = d3.layout.stack().values(d=>d.values)
var layers = stack(data)
他在例子中就是这么做的。
然而,在 v4 中,堆栈函数似乎需要表格格式的数据,因此上面的数据看起来像这样。
var data = [
{x: 0, apples: 91, oranges: 9},
{x: 1, apples: 290, oranges: 49},
];
有没有一种简单的方法来保持我的数据格式并使用 v4 堆栈函数?我似乎无法理解新的方法来做到这一点。在我当前的数据格式中,我有与值数组相关的有用属性。如果我将数据格式更改为表格,我看不到将属性与值配对的便捷方法。