This example is code written by Mike Bostock in 2012 as part of his tutorial Towards Reusable Charts. I put together this bl.ock so that the example code can be seen in its entirety in one page and studied. To get this working, I needed to include additional CSS for axes, taken from this log axis example.
Here are some learning resources related to this example:
https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js