座標系の原点は左上からであるため、「y」の値は各バーの上部に固定されています。「y」の値を固定し、「高さ」を大きくすると、バーが下がっているように見えます。バーを下から成長させるには、「y」と「height」の両方を同時に遷移させる必要があります。
これはあなたが探しているものでなければなりません、私は2行だけを変更しました。
chart.selectAll("rect")
.data(data)
.enter().append("rect")
.attr("x", function(d, i) { return x(i) - .5; })
.attr("y", function(d) { return h - .5; }) //new----
.attr("width", w)
.transition().delay(function (d,i){ return i * 300;})
.duration(300)
.attr("height", function(d) { return y(d.value); })
.attr("y", function(d) { return h - y(d.value) - .5; }); //new-----
チャートの下部にある「y」の値を開始しました(h-0.5)。次に、遷移するときに、同じ割合で「高さ」(y(d.value))を増やし、「y」(h --y(d.value))を減らします。これには、バーの下部を軸に固定する効果があります。
お役に立てれば!