"Beginning Python Visualization" by Shai Vaingast


U

UrsusMaximus

I just read this book and liked it. Here is a review:

Sometimes a picture is worth a thousand words. "Beginning Python
Visualization: Creating Visual Transformation Scripts", published in
February 2009 by Apress, shows how Python and its related tools can be
used to easily and effectively turn raw data into visual
representations that communicate effectively. The author is Shai
Vaingast, a professional engineer and engineering manager who needed
to train scientists and engineers to do this kind of programming work.
He was looking for a tutorial and reference work, and unable to find a
suitable text, wound up writing his first book. He wrote in the easy
and clear style of someone comfortable and engaged with the subject
matter.

The book uses several very specific examples that illustrate general
principles.

The first example is using GPS data. By using Python one can extract
data from GPS receivers and enter it into the computer and manipulate
it to do what one wants including creating graphs and charts. In this
section he shows how to use CSV, comma separated values, as a most
useful file format. He shows show to extract data from real world GPS
devices and import it via serial ports and the PySerial module. It
would be easy for the reader to duplicate and extend this project.

The heart of the book is coverage of useful examples utilizing
MatPlotLib, NumPy and SciPy. These related tools are easy to use and
fully integrated with Python. MatPlotLib is for plotting data and
graphs, including interactive graphs and image files. NumPy is a
powerful math library comparable to commercial tools like MatLab, and
SciPy extends NumPy to for the sciences. Examples are numerous and
include signal analysis using Fourier transforms.

There is also a section on Image Processing using PIL, the Python
Imaging Library. This is used for relatively simple image cropping and
sizing and also for bit by bit image processing. Interpolation and
curve fitting are also well covered. For anyone wanting an
introduction to graphical analysis of statistical data, this would be
an excellent resource.

The author is obviously a professional in this field. He has a knack
for good organizational style and a pragmatic approach to the work. In
the book he says "Most of the time, research is organized chaos. The
emphasis, however, should be on organized, not chaos." A real value I
got from the book is a better understanding of data files, format, and
organization as well as methods and guidelines for selecting file
formats and storing and organizing data to enable fast and efficient
data processing. It is obvious that this book was written by a
practicing engineer.

The theme of the book is that Python can be an all purpose environment
for data manipulation and visualization, using nothing but free and
open source tools that are easily integrated and scriptable without
using multiple programming languages. The book should be an invaluable
tool for scientists and engineers but it is also easily accessible to
anyone interested in math and data analysis. There is no need for an
advanced math background. While, as a matter of full disclosure, I
have undergraduate degrees in Math and Physics, I feel the book should
be easily accessible to anyone with a solid high school math
background who is seriously interested in the subject. The book
contains a short introductory tutorial on the basics of Python so
anyone familiar with programming in any language should be fine.

The book is an easy read from front to back, and I am sure it will
also be a good reference resource for the future. The writing style is
very clear and unforced and I found surprisingly few errors. While the
Python world has a surplus of introductory and general books, books
covering this kind of specific domain are especially welcome, and we
could use more on other topics by competent authors.

At 363 pages the book is a surprisingly fast read. Its methodology is
to use specific, short code examples to make all the key points. Most
of the code samples are well selected, short and written in clear,
concise Python. This is not the kind of book that overwhelms you with
massive amounts of code. Either the book was well edited or else it
was written by an exceptionally lucid thinker, or both.

So, if you want to learn how to process, organize, and visualize data
from various sources using the Python language, I recommend this book
to you.

I also posted a podcast of an interview with the author, Shai
Vaingast, at <a href="http://www.awaretek.com/python/
index.html">Python411</a>
 
Ad

Advertisements

S

Shawn Milochik

Thanks for the review and the podcast. I ordered the book on Friday. I
look forward to playing with it. Also (assuming you're Ron Stephens),
thanks for the Python 411 podcast. It's a great resource, and I
recommend it to all list members.

Shawn
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top