Using to analyze and visualize data dynamically

6 minute read , Posted on July 04, 2014, by Carl V. Lewis

It’s been a while since I’ve had the leisure to play with new open-source tools for data journalism. It’s been even longer since I’ve written a tutorial. Today I wanted to explore a fairly WYSIWYG web app Plotly. Although most of the features on face value appear to be not much more than what you can do in Google Visualization Playground or an open-source library like Highcharts.js – basic chart types on-the-fly, hover interactions – what particularly stands out about Plotly is its ability to perform many of the statistical analyses to your dataset before you go through the process of visualizing it.

For example, you can calculate percent change from a set of chronological raw numbers to display accurate trend data by simply choosing “Data Analysis>Percent Change” in the Grid View. I tried this out with some historical data scraped by the folks at on the percentage of the Savannah-area workforce in the hospitality industry, even adding in a fit or “trend” line to verify the upward tick:\

As you can see, lets the user easily add in annotations explaining the data. Granted, this could be accomplished using other tools, as well, but not so seamlessly. The user interface is a little cumbersome, and is still in beta. But judging by my experiences, this is a quicker solution than a JavaScript library and a more feature-rich choice than Google Charts.

Just to give you an idea of the full range of more than 45 different standard chart types, I put together this slick heat map displaying the average unique visitors I’ve received on my blog for the past month during certain times and days of the week. Take it for a whirl:

Not bad for a completely free, collaborative, easy-to-teach tool, huh? It’s no d3.js, but it does the job quite nicely. Especially when it comes to saving time writing out complicated Excel formulas.


Leave a Comment