D3.js in Action

Author: Elijah Meeks
Publisher: Manning
Pages: 352
ISBN: 9781617292118
Print: 1617292117
Audience: JavaScript devs who need to present data
Rating: 4.5
Reviewer: Ian Elliot

 

D3.js.js is a data visualization library in JavaScript and this book might well be your best way to get to grips with it.

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. 

To get the best from it you are going to be fairly good at HTML/CSS and JavaScript. It also is a good idea to already know how to use jQuery selectors. Elijah Meeks does start off with some words about each of these topics but not enough to fill in any gaps you might have - at best it's a reminder of what you should know.

Banner

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. 

 

d3JS

 

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. 

This isn't a step-by-step book and it isn't a reference work. It is a good guide book in the style of a holiday guide book that has lots of things you need to see. As long as you are happy about JavaScript, HTML and CSS then this is a good way to discover D3.js. 

Banner


ChatGPT For Dummies

Author: Pam Baker
Publisher: For Dummies
Pages: 176
ISBN: 9781394204632
Print: 1394204639
Kindle: B0C63LZ6DN
Audience: Everyone
Rating: 4
Reviewer: Ian Stirk

 


This book aims to introduce you to ChatGPT, how does it fare?



Classic Computer Science Problems in Python

Author: David Kopec
Publisher: Manning
Date: March 2019
Pages: 224
ISBN: 978-1617295980
Print: 1617295981
Kindle: ‎ ‎ B09782BT4Q
Level: Intermediate
Audience: Python developers
Category: Python
Rating: 4
Reviewer: Mike James
Classic algorithms in Python - the world's favourite language.


More Reviews

 

 

Last Updated ( Tuesday, 20 February 2018 )