D3.js Step by Step
A series of posts to get you started
Some background on D3.js and an overview of this series
Setting up a bare-bones pie chart
Turning a pie chart into a donut chart
Providing context while making use of white space
Reading in data from an external CSV file
Harnessing mouse events to layer on additional information
Adding the ability to filter the dataset and animate the transition