Wednesday, December 17, 2014

Visualizations on Tableau

I have been exploring Tableau recently and I found that it's actually quite a powerful data visualization tool. I've attached a few screenshots of the dashboards I drafted and I'm still working on improving them right now.

While using Tableau, I realized that a downside is that online documentation and tutorials of how to use Tableau features might be rather limited. I had to spend a few hours just to find out how to use simple features. In addition, I realized that some things that can be easily done in excel can't be done in Tableau (for example - side-by-side stacked charts). Nonetheless, Tableau in my opinion is still a great tool to use for data visualizations and connecting to data sources (where in Excel you would have to meddle around with ODBC connections).

Here are some screenshots of some dashboards I recently created (click to enlarge):


/






Wednesday, June 18, 2014

Using Treemaps and Heatmaps to visualize data

Recently I tried exploring the functionality and use of Treemaps in helping me manage my list of campaigns. I used R in Excel and hard coded the data into the template diagram, after running a MySQL script to extract the data from my company's database. What I found is that while it helps me visualize which campaigns are under-performing, what I really needed is a BI tool that would allow me to bucket certain campaigns by geographic split/account managers/size of campaigns etc.

The limitation of what I had tried was that it allowed me only 2 variables - I chose performance to be color coded into a scale of 100% (red) to 0% (black) to 100% (green) and the revenue spend over the campaign's lifetime as the size of each rectangle, in an attempt to understand the big picture of my campaigns per account manager to see which campaign I should look at and optimize right away. All in all, I think a tool like this would be useful for campaign analysts, and it would probably take a few software engineers around 6-8 months to build out a BI tool with this functionality. In the meantime, writing a macro with integration to the MySQL database would temporarily give us this functionality - with a lot of query tweaking for different sets of data.

Performance Treemap across a region

Performance Treemap subset

These were the links I found particularly useful when creating Treemaps using R:

  • http://spatial.ly/2011/08/improved-tree-maps-with-r/
  • http://flowingdata.com/2010/02/11/an-easy-way-to-make-a-treemap/

For Heatmaps, i find it only particularly useful in the context of showing distribution of a particular variable (in this case - Gas Prices) on an actual geographic map.

In the context of analytics in online advertising, it is commonplace to generate insights for the client that includes a map of the world or targeted locality (e.g. by country - US) and have heat spots on a varying color scale showing states or dmas with varying levels of performance (e.g. clicks/conversions or their respective click/conversion lifts).


Source: http://leftcoastlaw.com/files/2012/10/gas-price-heat-map2.jpg

Other common uses of Heatmaps would be to visualize values or a data set in tabular format but I don't find this extremely useful as of now. If I were to utilize this, it would most likely be a supplementary diagram since the functionality of this visualization is rather limited.

You can easily create something like that below in excel using conditional formatting on the entire table of values. For help creating this diagram, please visit this link: http://policeanalyst.com/creating-heat-maps-from-excel-pivot-tables-with-conditional-formatting/

Source: http://policeanalyst.com/wp-content/uploads/2012/04/sample_heat_map1.jpg

Wednesday, February 26, 2014

Representing data in a dashboard

I have been working on a dashboard lately and I feel that the choice of tools and diagrams that are used in building the dashboard are extremely crucial to effectively deliver the dashboard's message to the end user. Since I'm most familiar with excel, it naturally became my tool of choice for building the dashboard. Other analysts or data scientists might be more familiar with other tools such as Tableau, R, visual.ly etc. but the principles are the same in creating an effective dashboard.

Wikipedia describes a dashboard as "an easy to read, often single page, real-time user interface, showing a graphical presentation of the current status (snapshot) and historical trends of an organization's key performance indicators to enable instantaneous and informed decisions to be made at a glance". 

As per the Wikipedia description above - many businesses try to compact all their data into a single page dashboard, and a clear disadvantage is that the dashboard might become too abstract that it makes it difficult for the end user to interpret the data. However, if a single page dashboard is still required, it might be useful to add in appendices to support and explain complex representations.

I'm currently working on a dashboard to address a need to establish a macro-level view of the health of a particular agency's campaigns. We would frequently choose to ignore the use of tools such as dashboards and continue micro-managing each campaign - which isn't particularly efficient especially when you have a ton of campaigns to manage. For an analyst, we often have to take charge of a particular group of clients - whether they are grouped into a particular geographic region, type of industry or type of channel. By having a macro-level view of all the campaigns you are managing, it will eliminate the resources wasted on micro-managing campaigns and allow for better management of campaigns on a daily basis.

The dashboard that I have created focuses on 3 main variables - performance, client happiness and advertising campaign spend. To visualize all these variables into a single diagram - I used the donut graph functionality available in Excel. And on the left side of the graph, I included a raw performance stats table that was sorted by highest performing to the lowest and conditionally formatted to make the table easier to understand. I also included speed meter gauges to help summarize performance and client happiness findings.

click for larger image

I felt that the main dashboard wasn't sufficient to explain my message to the intended user, and thus I created 2 other pages in the appendix. The 1st appendix page has sparkline charts to show in detail trend data alongside the data set that was used to populate these charts since the intended users were technical and more data focused.

click for larger image

The 2nd page in the appendix focuses mainly on underperforming vs performing campaigns and also includes the data set and sparkline charts highlighting the highest and lowest performance within the 3 month period. Another important aspect was the inclusion of a table illustrating the campaign's goals - which are used as a benchmark to determine performance numbers.

click for larger image

Visually the dashboard looks more or less pleasant, but it can definitely be worked on further to remove clutter and repetition. Also, if the agency finds this prototype to be really useful and valuable for their business we can consider putting together a team of engineers to build a BI tool having similar functions.