Email the Author
You can use this page to email Swizec Teller about React+d3.js.
About the Book
Why you should read React+d3.js
After an hour with React+d3.js, you’ll know how to make React and d3.js play together. You’ll know how to create composable data visualizations. You’re going to understand *why* that’s a good idea, and you will have the tools to build your own library of re-usable visualization parts.
Ultimately, you’re going to understand whether React and d3.js fit the needs of your project.
What test readers are saying
A sharply written work that delivers technical information in a conversational and easy to digest manner. ~ Malcolm Maclean, Author of D3 Tips&Tricks
an awesome, lightweight intro ~Philip Patterson
An excellent study in how state vs props work and are use ~ Thomas J. Buhr, founder of Virtuoso
I think it is a great book! Not even a bad introduction to react. ~ Trent Earl
Why React and d3.js
React is Facebook's and Instagram's approach to writing modern JavaScript front-ends. It encourages building an app out of small re-usable components. Each is self-contained and only needs to know how to render a small bit of the interface.
But many frameworks have attempted this. Everything from Angular to Backbone and jQuery plugins. But where jQuery plugins fast become messy, Angular depends too much on HTML structure, and Backbone needs a lot of boilerplate, React has found a sweet spot.
I have found it a joy to use. Using React was the first time I have ever been able to move a piece of HTML without having to change any JavaScript.
D3.js is Mike Bostock’s infamous data visualization library used by The New York Times and many others. It is the workhorse of data visualization on the web and many charting libraries out there are based on it.
But d3.js is a fairly low-level library. You can’t just say "I have data, give me a barchart". Well you can, but it takes a few more lines of code than that. However once you get used to it, d3.js is a joy to use.
Just like React, d3.js is declarative. You tell it what you want, instead of *how* you want it. It gives you access straight to the SVG so you can manipulate your lines and rectangles at will. But d3.js isn't that great, if all you want are charts.
Which is where React comes in. Once you’ve created a histogram component, for instance, you can always get a histogram with `<Histogram {...params} />`.
Doesn’t that sound like the best? It does to me.
And it gets even better. With React you can make various graph and chart components build off the same data. This means that when your data changes, the whole visualization reacts.
Your graph changes. The title changes. The description changes. Everything changes.
About the Author
Hi, I’m a digital nomad and full stack web engineer.
I travel the world and help startups win. From setting up new teams and training juniors, to fixing spaghetti code and implementing new features.
My code has been used by MasterCard, Commerzbank, Google, Mashable, Lyft, and many others.
When I’m not coding, I’m writing.
At least 5000 people bought my books ... I don’t know if that’s a lot, but it’s more than zero. I like that.
My work has been featured in Business Insider, LifeHacker, Huffington Post, and several dead-tree magazines. I’ve spoken on BBC Radio, appeared on Slovenian national television, and given talks all over the world.