Javascript D3嵌套组作为x轴

Javascript D3嵌套组作为x轴,javascript,d3.js,Javascript,D3.js,如何使用D3中的嵌套组作为x轴?有可能吗 我不是在我的开发机器上发布我的代码示例的,但出于说明目的,让我们假设以下代码来自: var nest=d3.nest() .key(函数(d){return d.sex;}) .键(功能(d){ var ageGroup=null; 如果(d.age 10&&d.age 20&&d.age 30&&d.age 40&&d.age 50&&d.age 60&&d.age 70&&d.age 80&&d.age 90&&d.age您可以使用分组条形图来显示数

如何使用D3中的嵌套组作为x轴?有可能吗

我不是在我的开发机器上发布我的代码示例的,但出于说明目的,让我们假设以下代码来自:

var nest=d3.nest()
.key(函数(d){return d.sex;})
.键(功能(d){
var ageGroup=null;

如果(d.age 10&&d.age 20&&d.age 30&&d.age 40&&d.age 50&&d.age 60&&d.age 70&&d.age 80&&d.age 90&&d.age您可以使用分组条形图来显示数据。正如@Cyril所评论的,您可以使用顺序刻度来定位轴值和数据

我创建了一个简单的JSFIDLE来展示我的方法

var x0 = d3.scale.ordinal()
.rangeRoundBands([0, width], .1); // x scale for your ageRanges

var x1 = d3.scale.ordinal(); // Inner x scale for your Male and Female values.

var y = d3.scale.linear().range([height, 0]); // y sale for your count value

var color = d3.scale.ordinal() // set colors for inner x scale
.range(["#98abc5", "#8a89a6", "#7b6888", "#6b486b", "#a05d56", "#d0743c", "#ff8c00"]);
这是JSFIDLE


您可以将其用作顺序刻度。谢谢@torresomar。如果我想将性别显示为堆叠的,该怎么办?例如,男性在y0,女性在y1?您可以通过以下示例处理此问题,谢谢@torresomar。是的,我知道这个示例,但是,我必须尝试在数据数组和嵌套数组之间进行映射。该示例没有做到这一点。您知道吗有什么想法吗?
var x0 = d3.scale.ordinal()
.rangeRoundBands([0, width], .1); // x scale for your ageRanges

var x1 = d3.scale.ordinal(); // Inner x scale for your Male and Female values.

var y = d3.scale.linear().range([height, 0]); // y sale for your count value

var color = d3.scale.ordinal() // set colors for inner x scale
.range(["#98abc5", "#8a89a6", "#7b6888", "#6b486b", "#a05d56", "#d0743c", "#ff8c00"]);