Data is the new medium of choice for telling a story or presenting compelling information on the Internet and d3.js is an extraordinary framework for presentation of data on a web page.
Version 3.x If you're looking for the latest edition of this book that was written for version 4.x you can find it here...
It's not written for experts. It's put together as a guide to get you started if you're unsure what d3.js can do. It reads more like a story as it leads the reader through the basics of line graphs and on to discover animation, tooltips, tables, interfacing with MySQL databases via PHP, sankey diagrams, force diagrams, maps and more...
Because in the process of learning things, it's a great way to remember them if you write them down :-).
As a result, learning how to do cool stuff with D3 meant that I accumulated a sizeable number ways to help me out when the going got tricky. Then I realised that these could be useful for others who were trying out d3.js and who were at a similar knowledge level.
So here we are! A collection of tips and tricks for d3.js written by a noob for people who might consider that they're in the same situation :-).
I've captured the appropriate code (in cool looking coloured text) and added in heaps of illustrations of what's going on so that you will get more traction at the start of your learning process than I did.
There are over 50 code examples that are used in the book (with their data files) available to download (still free!) and they are also available online.
The awesome that is Open Source.
Please consider this an opportunity for you to contribute back to the Open Source community that makes products like d3.js possible. If you find something that can be improved about the book or think there's something that can be added, just let me know!
The book has a lot of information in it, but there's still more to come. Currently (at time writing) it counts up to about 580 pages, so it's not a short read but I've tried to pitch it in sections so that if you find something interesting, you can read parts in isolation. There's a sizeable amount of content on the d3noob.org blog site from the book and hopefully between the two, people will find a way that will help them improve. I have a long list of additional material that I want to add, so I'm hoping that publishing using Leanpub will allow readers to get easy notification of when updates and improvements are made.
Download the whole book just to try it out!