FlowingData Forums » Data Visualization

Best data visualization book for a beginner

Started 3 months ago by anabayan / 15 posts

  1. I am a software developer, would like to learn information visualization. what is the best beginner's book you'd recommend?

    I know Java and php, and a couple of databases. Getting the data, polishing them etc is easy for me. What I want to learn, is creating maps and various forms of visualization.

  2. what kind of visualization are you interested in?

  3. I've zero skills with photoshop etc. I'll have to depend on programming to create my visualizations. I just bought a book on processing, would like to have one or two books that teach data collection and visualization principles (various forms from venn diagrams to heat maps). At the moment I am not sure of the type of visualization.

    Someone recommended "Semiology of Graphics" but its way tooooooo expensive (used book starts at 400$).

    Also, between Flash and Processing, which is better to learn? I don't know Flash, but I know Java, so learning Processing should be easy for me. But 9 times out of 10, I see Flash being used (NYTimes for example).

  4. Since this is still an emerging area, there's no clear path, but here's a few tips & suggestions for you.

    Books:
    Visualizing Data by Ben Fry.
    A short book about how to use Processing for Data Visualization by one of the key designers in the field. It's not that deep, but would probably be a good into for you given your background.
    http://www.amazon.com/exec/obidos/ASIN/0596514557/ref=nosim/benfrycom-20

    Beautiful Evidence by Edward Tufte
    Or any of Edward Tufte's books. These are really good examples of how to think critically about data visualization and will teach you about the design and thinking surrounding the field, as well as having really good inspirational works.
    http://www.amazon.com/Beautiful-Evidence-Edward-R-Tufte/dp/0961392177

    Data Flow
    This books is for pure inspiration. Just data visualization eye candy really. But would give you a very good tour of the field. Though, just reading the archives of flowingdata or inforgraphics.com would probably be as good. Get this is you like having a printed inspiration.
    http://www.gestalten.com/books/detail?id=ceaea7651adf9ba0011b78b89b9d0295

    It's hard to give you tips without telling us a bit more about data you ant to visualise and what your goals are. I'd give very different advice for someone wanting to do stuff for fun, than someone who's been asked to look into the area by their boss.

    For you, I'd say start with Processing, since you know Java, and explore it from that area. Flash is often a better tool for data viz for a variety of reasons, the main resons being it's much easier to make buttons interactive, and make things move around, and there's lots of open APIs for google maps etc... and more people have the Flash plugin. So I'd say learn the basics in Processing, since there's more material in it, but if you get into it more seriously, begin to look at Flash in the longer term.

    Also, finally, remember that data viz is as much a technical field as it is a design one, so consider partnering with a visual designer or trying to brush up on your visual designs. My main suggestion would be to post up your works and experiments to get feedback and critiques.

    Hope that helps - good luck with your journey! :)

  5. good examples, kevin. as for the flash vs processing question, this thread might help:

    http://forums.flowingdata.com/topic/processing-vs-flash

    in any case, since you've got some programming skills, you're way ahead of the game already. you'll just have to apply those skills to the visual.

  6. Thank you so much for all the replies and advice.

    One last question :-(
    What about Adobe AIR? I understand there are some disadvantages (like spending money on tools, proprietary technology etc) if I am going to use any of Adobe's technology, but at the same time, 9 out of 10 beautiful visualizations I've seen, are on Flash (some on AIR). I've no clue about Flash/AIR/AS, but I am sure I can learn them. I'd like to choose one tool and stick with it (mainly because I've limited time to spend learning).

    hmm, partnering with a visual designer - that is going to be the most interesting problem to solve

  7. I'm pretty sure if you earn Flash/AS you can easily export to AIR - but don't quote me on that.

  8. If you know Java, you'll want to look at Prefuse ( http://prefuse.org/ ). The example apps are pretty self-explanatory and give a good foundation for more advanced efforts. I've found Prefuse more intuitive than processing, and also much more powerful from a data manipulation perspective. If you feel like learning ActionScript, you should look at Flare ( http://flare.prefuse.org/ ) which is Prefuse ported to AS.

  9. Having at least tinkered with most of what has been mentioned thus far, I thought I'd add my 2 cents.

    I think the book options are good ones: the Tufte material is almost a requirement as you get into this stuff. I also get a lot of ideas from design sources like the stuff over here, but that's pure inspiration - not technical in the sense we're discussing.

    As for language - I'd make a pretty strong argument in favor of the Adobe products. Particularly Adobe Flex. As a Java programmer, Actionscript will be no great leap - in general it will make sense to you. Flex adds the ability to do the visual stuff without having to learn Flash's raw layout paradigm. Plus, with Flex, you can publish to the web or to AIR with the click of a button (basically...) without having to get into the guts. The biggest benefit (to me) of Flex/Flash over Processing is the ability to build in user interaction. Flash is largely built around user interaction, whereas processing is not, and since good data visualization involves "answering the user's question" letting the user "ask their question" through interaction is pretty powerful...

  10. ok, Flex seems nice. Though I have seen more of Flash than anything else, for visualization on the web. Flex is not free, right?

  11. flex itself is an open source framework, but flex builder 3, which makes makes development a bit more efficient does cost some. it's free for those in education though:

    https://freeriatools.adobe.com/flex/

    you can also use flex builder to develop actionscript projects.

    Either way, you're going to be importing your work into a file that runs in the Flash environment though.. or Adobe AIR.

  12. yeah, just checked that. It costs 249$ :-(
    There is no other free/open source tool to develop in Flex?

  13. Been teaching visualization for some years now and while the book offering used to be really narrow (i.e. Tufte + some on stat graphing), things have gotten better now.

    I divide the books to three different groups.

    Information Graphics
    - More high level visualizations, usually hand drawn. There are good (Tufte) and not so tood (Wurman) examples of this genre. You'll mostly learn genre techniques, prettifying, get plenty of inspiration and ideas, but also learn a lot of bad habits hard to get rid of later on, if you start with these (Tufte being the exception). Recommended for illustrators who need to to info-gfx and need to SELL their illustrations to magazines/books, where visualizing properly is usually not the 1st priority

    Data visualization books (how to)
    - These are books about graphing, plotting, displaying data points - so a lower level representation than the information graphics approach, which already has a story to tell. Data viz is about displaying data and it's underlying structures properly, even when there's no hidden story to tell (yet, may not be discovered). A really good primer in this field, imho, is Harris' Information Graphics: A Comprehensive Illustrated Reference. It's not pretty, sexy nor step-by-step how to, but it show you most of the graph types and studying them you can learn a lot. If you are comfortable with some maths (not heavy) and more technical approach, then Handbook of Data Visualization by Chen (ed.) is a good start as an anthology. For more maths I'd reach for Introduction to Scientific Visualization by Wright, but as I'm not into that myself I must say that this recommendation is based on cursory glance.

    Visualization & perception
    - These are books that go one additional step back and show you how humans see and make meaning. These are imho, expert books, but great for anybody who is serious about getting into the field and really wants to make good stuff and break the rules with a purpose and succcess. My standard recommendation used to be Colin Ware's 'Information Visualization' in 2nd ed now. Another more recent recommendation would be 'Introduction to Information Visualization' by Mazza (Springer, 2009). Don't be fooled by its name, it is 90% data visualization (using the terminology I defined in this post). Ware's more recent 'Visual Thinking for Design' is more perception oriented, so less about visualization than about how people see visualizations.

    There's also a class of books about language specific visualization, like 'Beginning Python Visualization' and 'Visualizing Data - Exploring Data with Processing'. Haven't had time to more than glance at those, but it's good to be aware of those, if one wants to get in via the programming route and is a beginner in programming.

    Then there are more specific books depending on your needs like 'How Maps Work' by MacEachren (understanding/making maps), 'Graphics of Large Datasets: Visualizing a Million' by Chambers (maths and algorithms), 'Graphing Data' and 'Visualizing Data' by Cleveland (how to draw statistical graphs properly) and 'Information Dashboard Design' by Few (basics of designing business information dashboards) + many, many others.

    If I'd start with one (for a programmer), I'd start with the Mazza book, or if you just want to look at examples, then the Harris book. If your really into the visualization, then read all Tuftes, Cleveland books, Harris and Wares for a start.

    And visualize A LOT, show your stuff to others, kill your darlings and learn from criticism. After all, visualization is about conveying meaning. If people don't understand your visualizations, it's time to go back to the drawing board.

    Best of luck with your learning! Visualization can be fun, but really knowing it can also be hard work at times :)

    P.S. The Bertin's now out-of-print classic Semiology of Graphics is a must for any *serious* student in the field, esp. if one is not adept in graphic design. It's such a pity it has not been reprinted. Not worth $400 though, unless you are really dedicated and have read/understood most everything else :)

  14. awesome, vasra. thanks for the (detailed) roundup.


Reply

You must log in to post.

About this Topic

Tags