使用D3 v3,我格式化数据以匹配Mike的示例以快速启动我的开发过程。这里https://github.com/d3/d3-3.x-api-reference/blob/master/Stack-Layout.mdd3.js堆栈布局从v3升级到v4
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堆栈功能?我似乎无法理解这种做法的新方法。在我目前的数据格式中,我有与数组相关的有用属性。如果我将数据格式更改为表格式,则看不到将属性与值配对的便捷方式。