我有一个动态的分组条形图,可以随时重新加载新数据。它大部分时间都按预期工作。
我的问题是,在xAxis上,当我的数据值为1时,xAxis为每个刻度显示1而不是0 1 2 3 4 5,从0到1的条形。当这种情况发生时,条形图会一直穿过图表。
如果我将xAxis.ticks设置为1,则图表上的刻度线很好(0和1)但是如果我的值超过1,则图表上只有2个刻度。 (0到15)有没有办法解决这个问题?
答案 0 :(得分:0)
我最终只是在x域中添加了5。
var formatxAxis = d3.format(' .0f');
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom")
//.tickFormat(d3.format(".2s"));
.ticks(5)
.tickFormat(formatxAxis);
y0.domain(data.map(function (d) { return d.groupLabel; }));
y1.domain(subgroupLabels).rangeRoundBands([0, y0.rangeBand()]);
x.domain([0, d3.max(data, function (d) {
return d3.max(d.subgroups, function (d) {
var v;
d.value > 4 ? v = d.value : v = 5
return v;
});
})]);