|D3.js in Action|
Author: Elijah Meeks
The problem with a library like D3.js is knowing what it can do. Once you know it is possible then you can look up the exact way of achieving it. As a result you don't necessarily need a reference work or something that is organized in a completely logical way. This book is more like a guide book than a reference work.
After an overview of the general idea of D3.js and data visualisation, the second chapter moves on to look at data and data binding principles. Starting off from loading and formatting data it also covers the often difficult topic of data transformations - easy in D3.js. Then on to data binding a key feature of using D3.js. With data binding you can create graphics that change when the data does without you having to do anything.
Chapter 3 takes a broader view of a data visualization project - data driven design. Here we learn about combining D3.js with other HTML elements, events and DOM manipulation. If you are familiar with jQuery then this should be all very simple.
This is where the first part of the book ends and at this point you should have a good idea of the way D3.js works. What you won't have is a clear idea of how far you can go. Part 2: The Pillars of Information Visualization is an examination of how to do bigger things with D3.js.
It starts off looking at the anatomy of a chart - axes, complex graphical objects and line charts and interpolators. Chapter 5 covers histograms and pie charts. Not just the simplest cased but things like donut pie charts and animated pie charts. Then onto pack layouts, trees, stacked layouts, word clouds and plugins. Not a particularly logical or exhaustive examination but enough to let you see how to work from simple to sophisticated.
Chapter 6 deals with the specialist subject of network visualizations. No not visualizations you can view over a network but ways of visualizing network structure. This is a difficult subject because in spite of just having to connect the nodes with arcs you also have to find a way to make the mess that usually results look good enough to understand. A lot of this chapter is about automatic layout.
Chapter 7 is about geospatial visualization. This explains how to create custom maps without the help of Google or Bing.
The final chapter in this part of the book is about working with the DOM to do "traditional" things. It covers things like using a table to display a spreadsheet like view of data and using Canvas as an additional drawing element - D3.js uses SVG for its displays.
Part 3 of the book is just called "Advanced Techniques" and for some readers the previous part will have been advanced enough. Its first chapter is on composing interactive applications. This is another way of saying creating "dashboards" that are composed of multiple visualizations. Chapter 10 explains how to make your own layouts and components to extend D3.js. The final chapter explains something about big data visualization and no, this isn't about Hadoop or big data processing. It explains how D3.js has some built-in facilities but if you want to show big data displays then you are going to have to resort to using Canvas to speed things up. It covers big geo data and big network data. You also get to learn about speeding things up with quadtrees, which D3.js does support.
|Last Updated ( Tuesday, 20 February 2018 )|