我有一个像这样的对象数组
[{
"frequency": 1,
"position": 20
}, {
"frequency": 2,
"position": 60
}, {
"frequency": 3,
"position": 100
}]
设置yAxes很容易
var yScale = d3.scale.linear()
.domain([0, d3.max(data, function (d) {
return d.frequency;
})])
.range([0, chartHeight]);
但我不知道如何计算条形的x位置和宽度。我可以在迭代每个记录时手动完成并通过减去下一条记录和当前记录来计算width
,并从offset
参数设置position
,但是有这种情况保持chartWidth
中的条形,所以我想使用d3方法。