Im following a tutorial on how to create axis' for d3js graphs and I have become hung up. In the following code, when uncommenting out the code, the first two rectangles in my histogram disappear. Somehow when appending a rew rect it causes two of my data points to disappear.
index.html
<html>
<head>
<link href="style.css" rel="stylesheet">
<script src="http://d3js.org/d3.v3.min.js"></script>
</head>
<body>
<script>
var data = [3,6,3,9,11,3,9,12,6] //data.length = 9
var max = d3.max(data);
var heightFactor = 50
var barWidth = 20, barPadding = 1;
var margin = {top:10, right:10, bottom:10, left:50};
var graphWidth = data.length * (barPadding + barWidth) - barPadding;
var totalWidth = margin.left + margin.right + graphWidth; //248
var totalHeight = max*heightFactor + margin.top + margin.bottom;
var newMargin = margin.left -10;
var svg = d3.select("body").append("svg")
.attr("height", totalHeight)
.attr("width", totalWidth)
.append("g");
svg.append("rect")
.attr("width", totalWidth)
.attr("height", totalHeight)
.attr("fill", "white")
.attr("stroke", "blue")
.attr("stroke-width", 1);
var graphGroup = svg
.append('g')
.attr('transform', 'translate(' + margin.right + ',' + margin.top + ")");
/* this is my problem
graphGroup.append('rect').attr({
fill: 'rgba(0,0,0,0.1)',
width: graphWidth,
height: totalHeight - (margin.bottom + margin.top)
});
*/
svg.selectAll("rect")
.data(data)
.enter()
.append("rect")
.attr("width", barWidth)
.attr("height", function(d){return d*heightFactor;})
.attr("fill", "steelblue")
.attr("x", function(d,i){return i*21})
.attr("y", function(d){return (max*50 - d*50) + margin.top})
</script>
</body>
</html>