2016-11-10 18 views
0

在我的提琴有水平条形图;我想在酒吧之间留出更多空间。 my fiddle。我可以篡改高度属性(行:101),并减少酒吧的高度,使空间似乎增加但我不想改变他们的身高。我怎样才能增加酒吧之间的空间而不改变他们的身高?我可以在不调整高度属性的情况下给出条形矩形之间的空间吗?

代码矩形

rects = groups.selectAll('rect') 
    .data(function (d) { 
    return d; 
}) 
    .enter() 
    .append('rect') 
    .attr('x', function (d) { 
    return xScale(d.x0); 
}) 
    .attr('y', function (d, i) { 
    return yScale(d.y); 
}) 
    .attr('height', function (d) { 
    return yScale.rangeBand(); 
}) 
    .attr('width', function (d) { 
    return xScale(d.x); 
}) 

回答

1

你已经在做了在你的代码。当你写:

yScale = d3.scale.ordinal() 
    .domain(months) 
    .rangeRoundBands([0, height], .1); 

rangeRoundBands秒参数是条之间填充:

ordinal.rangeRoundBands(interval[, padding[, outerPadding]]) 

所以,你只需要调整该值。检查这个小提琴,用0.5https://jsfiddle.net/catbu2oz/

但是,如果你在谈论保持相同的高度以像素为单位,只有一个解决办法:硬编码条的高度值和增加规模的范围内,如在这小提琴中:https://jsfiddle.net/3xakLhfo/

相关问题