我是D3新手,我构建了我的第一个树形图。
我试图找出从左到右依次从上到下而不是从右到左+从下到上排序节点。订单基于每个节点的大小值。
现在,它看起来像
size 20 | size 100
size 50 |
size 70 | size 200
但我想要
size 200 | size 70
| size 50
size 100 | size 20
这是完整的JSfiddle。
我提前感激。
答案 0 :(得分:5)
您可以使用树形图布局的.sort
function来实现此目的。默认排序是:
.sort(function(a,b) {
return b.value - a.value;
})
将此更改为反向
.sort(function(a,b) {
return a.value - b.value;
})
也会改变整体布局,所以为了得到你想要的,你也需要调整大小。
var treemap = d3.layout.treemap()
.size([width/1.5, height])
.sticky(true)
.sort(function(a,b) {
return a.value - b.value;
})
.value(function(d) { return d.size; });
完整示例here。