Fry, Ben. Visualising data. Sebastopol, CA: O'Reilly, 2008. xiii, 366  pp. ISBN 0-596-51455-7 $39.99/£24.99
I was initially misled by the title of this book when I saw it in the O'Reilly catalogue: I was expecting a book about the general problem of visualizing data, but what arrived is a book about the use of the open-source software program, Processing.
The author, Ben Fry, was one of the initiators of the Processing environment, as the Website for the system indicates, and he notes in the Preface that:
I wrote this book because I wanted to have a way to make the ideas from Computer Information Design, my Ph.D. dissertation, more accessible to a wider audience. More specifically, I wanted to see these ideas actually applied, rather than limited to an academic document on a shelf.
This was an excellent reason and also shows an understanding of what generally happens to Ph.D. dissertations!
However, for the generalist reviewer, there's a problem: how do I make the value of the text known when I am unfamiliar with the programming environment it deals with? Clearly, I can only address myself to the success or otherwise of the pedagogic purpose of the text.
As usual with O'Reilly products, the book production is excellent: the serif font is excellent for reading and there are numerous colour illustrations and graphs. The index is professionally done and comprehensive.
Fry begins with outlining the 'seven stages of visualizing data': acquire; parse (i.e., provide structure for the meaning of the data); filter to remove data not of interest; mine to discover patterns; represent with lines, bar graphs, etc.; refine to make the basic representation clearer; and interact - 'add methods for manipulating the data'. The author notes that these steps are not to be followed slavishly and that in some projects not all of them will be needed; nevertheless they consititute a valuable checklist.
From this elementary beginning the book moves on to an example of the process and then, in a succession of chapters, to the use of Processing for mapping, time series data, correlations and other relationships among data, scatterplot maps, trees, and networks. The final three chapters deal with the aquisition of data, parsing and using Processing with Java.
I had hoped to find some examples of the output of Processing either at the download site or on the O'Reilly site (which is usually good at providing this kind of thing); however, I failed. On the other hand you can see some Processing-produced video clips, which illustrate the power of the system. Look at the videos of flocks of birds: it's quite amazing what imagination can produce with data.
In all, if you want to get to use the Processing environment, this is a very good and very authoritative place to begin.
Professor T.D. Wilson