I believe the most valuable feature of Tableau is the flexibility it offers with regards to the types of visualizations the user can create. A lot of other products in this space offer limited chart types and work in a way that provide little room for customization, if any. But Tableau allows the user to work with its predefined templates such that the end result can be a visualization that is highly customized - in terms of the design, colors, sizes, shapes and the overall visual appeal. This is an invaluable feature as it enables one to communicate more powerfully from the data.
I would also consider the ‘Create Calculated Field’ feature as very valuable. It’s one that I’ve used quite extensively. Most of the time, the data we work with will not have all the necessary features that enable us to tell a good, convincing story out of it. Therefore, it becomes imperative that we create them and extract the maximum amount of information possible from the data.
Improvements to My Organization
In our line of work, we primarily use Tableau Desktop/Server to visualize data based on our clients’ requirements. Once, while dealing with a procurement scenario, we found that the client could save $2.00 on each unit of Part A if they ordered it from Supplier X rather than from Supplier Y.
In another case, we designed dashboards that showed data from different sensors located throughout a building. This kind of an application could enable stakeholders to monitor building climatic conditions in real time and adjust thermostats according to CO2 levels and occupancy, thereby driving efficient consumption of power.
In this way, Tableau visualizations can be used to take more intelligent decisions as they bring out patterns buried under a mountain of data.
Room for Improvement
I would like to see the inclusion of a template to create a speedometer chart. I can understand that Tableau doesn’t have it as one of its default chart types because it’s not a good way to represent the data. Indeed that’s true, but speedometers are quite popular and once we had a client who was insistent on having highly-customizable speedometers and I had to spend a good amount of time to create them via multiple workarounds. In my experience, I've seen many customers who do not want to consider alternatives to speedometers.
I’ll address these two points:
- Speedometers/dial charts are a not-so-good way to represent data
- I had to resort to multiple workarounds to create a speedometer in Tableau
First, I’ll give you a few reasons as to why speedometers are not considered to be a good way to visualize data:
- Low data-ink ratio: ‘Data’ here refers to the data that you want to show on your chart/graph and ‘ink’ refers to the aesthetic elements of the chart such as lines, colors, indicators or any other designs. A low data-ink ratio implies that the quantity of ‘ink’ on the chart is very high relative to the small quantity of ‘data’ that is present on the chart. What does a speedometer or a dial chart do? It shows you the current state (value) of any system. Therefore, the data shown by the chart is just one number. Let’s come to the ‘ink’ part. Needless to say, there is a lot of ‘ink’ on a speedometer chart – so many numbers all around the dial, the dial itself, a needle that points to the actual number etc. The fundamental principle of data visualization is to communicate information in the simplest way possible, without complicating things. Therefore, best practices in data visualization are aimed at reducing visual clutter because this will ensure that the viewer gets the message – the right message – quickly, without being distracted or confused by unnecessary elements.
- Make perception difficult: The human brain compares lines better than it does angles – information in a linear structure is perceived more easily and quickly than that in a radial one.Let's say I’m showing multiple gauges on the same screen. What's the purpose of visualizing data? It's to enable the user to derive insights - insights upon which decisions can be taken. The more accurate the insights, the better the decisions. So, its best that the visualization does everything that helps the user understand it in the easiest possible way. Hence, the recommended alternative to a dial chart is a bullet chart
- Occupy more space: Assume that there are 4 key process indicators (KPIs) that I need to show on screen and the user needs to know whether each KPI is above or below a pre-specified target. If I were to use dial charts I’ll be creating 4 dials – one for each KPI. On the other hand, if I were to use bullets, I’ll be creating just one chart where the 4 KPIs will be listed one below the other and each one in addition to showing its actual and target values, will also show by how much the actual exceeds/falls short of the target in a linear fashion. As real estate on user interfaces is at a premium, believe me, this is definitely better.
Now, let me come to my situation where my client would not accept anything but a speedometer. As I’ve mentioned in the review, Tableau doesn’t provide a speedometer template by default. So when I was going through forums on the Internet I saw that people usually used an image of a speedometer and put their data on top of that image and thereby creating speedometers in Tableau.
This would not have worked in my case because my client wanted to show different bands (red, yellow and green) and the number of bands and bandwidths varied within and between dials. For example, one dial would have 2 red bands (one between 0 and 10 and the other between 90 and 100), 1 yellow band and 1 green band while another would have just one yellow band between 40 and 50 and no red or green bands. Also, these bands and bandwidths would be changed every month and the client needed to be able to do this on their own. Therefore, using a static background image of a dial was out of the question.
So, here’s what I did: I created an Excel spreadsheet (let’s call it data 1; used as one of the 2 data sources for the dial) in which the user would be able to define the bands and bandwidths. The spreadsheet had a list of numbers from one to hundred and against each number, the user could specify the band (red/green/yellow) in which it falls. The other data source (data 2) was an Excel sheet containing the numbers to be indicated on the dials. Then, in Tableau, I created a chart which had 2 pies – one on top of the other. Both the pies had numbers from 1 to 100 along the border, providing the skeleton for the dial. The top pie used data 1 and had the red, yellow and green bands spanning the numbers from 1 to 100. I then created a calculated field having an ‘if’ condition: if the number in data 2 matched the number in data 1, the field would have a value ‘yes’. Otherwise, it would have a value ‘no’. This will produce only 1 ‘yes’ and 99 ‘no’s’ because there will be only 1 true match. I put this calculated field onto the ‘Color’ shelf and chose black for ‘yes’ and white for ‘no’ – this formed the content of the bottom pie. So the bottom pie had 99 white colored slices (which looked like one huge slice) and just 1 black slice (which looked like a needle). I made the top pie containing the red, yellow & green bands more transparent and this gave the appearance of a needle pointing to the KPI value, also indicating into which band the number fell, thereby enabling the client to gauge their performance.
Use of Solution
I’ve been using Tableau Desktop since January 2015.
I have not encountered any deployment, stability or scalability issues.
I've not directly contacted the tech support team of Tableau Software myself but whenever any clarification was required regarding the creation of a particular visualization, I've found many discussion forums and blogs, the contents of which have been extremely helpful.
Other Solutions Considered
I have also worked with Microsoft's Power BI and I've found Tableau to be far more flexible and user-friendly in terms of the variety of visualizations it allows you to create.
Disclosure: I am a real user, and this review is based on my own experience and opinions.