10. var w = 800,h = 500, barWidth = 50, space = 2
var data = [150, 100, 200, 300, 150, 100];
var svg = d3.select("body")
.append("svg")
.attr("width", w)
.attr("height", h);
svg.selectAll("rect")
.data(data)
.enter()
.append("rect")
.attrs({
x: function(d, i) { return i * (barWidth + space) },
y: function(d) { return h - d; },
width: barWidth,
height: function(d) { return d; }});
11. Scaling and Axes
var yScale = d3.scaleLinear()
.domain([0, 5])
.range([0, 100]);
console.log(yScale(1));// 20
console.log(yScale(4));// 80
console.log(yScale(5));// 100
The axes is being de ned using the scale. e.g:
d3.axisLeft(yScale)
12.
13. var w = 800, h = 500, barWidth = 50, space = 2, margin = 40
var data = [1, 2, 5, 3, 2, 4, 3, 2, 1, 5];
var svg = d3.select("body")
.append("svg")
.attrs({
width: w + margin*2,
height: h + margin*2,
})
.append("g")
.attr("transform", "translate(" + margin + ","
+ margin + ")");
var yScale = d3.scaleLinear()
.domain([0, 5])
.range([h, 0]);
svg.append("g")
.call(d3.axisLeft(yScale).ticks(5));