2016-11-10 17 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/

相關問題