Thanks! I was struggling with d3 until I focused on understanding data joins. It's not too hard once you really figure that part out.
Here are the two pages that I think explain them best:
- http://mbostock.github.io/d3/tutorial/circle.html
- http://mbostock.github.io/d3/tutorial/bar-2.html