Posts tagged design
Today, I was scanning multiple websites to get my daily portion of data visualization vitamins. Whilst doing this, I came up across the following graph.
At first sight, I thought I saw a clear correlation between the Internet Explorer Market Share and the number of Murders in the US. When the amount of murders got less, the IEX Market Share seemed to crash. Wow.. how is that possible?
Let’s take a closer look and find out what’s going on with this graph. After a quick examination, I came up with the following:
This graph has two Y-axes.
Mmm.. interesting. How should I read this graph? Mmm… I’ll find out soon enough. I guess..
The Y-axis for the bars doesn’t start at zero
One of the basic principles for designing a bar chart is that the Y-axis starts at zero. Since we can really easy see the difference in size/length of two or multiple bars almost without even thinking (preattentive processing), we’d better show the whole bar and not only a part of it. If we want to show the whole bar, we need to start the Y-axis at zero, at all times.
Confusing title and legend
There’s going on a lot with the title and legend. The title of this graph is named “Internet Explorer vs Murder Rate”. The legend which explains which color represents which data serie, is positioned below the graph. That’s not logical in the first place. It should be more convenient to place it above the graph. That’s a first observation.
Another thing regarding the legend, is that the order of the data series in the title and legend are swapped. The title begins with Internet Explorer and the legend with Murders in US. Why should we do that?
To continue, one of the most confusing things is that the description of the data series in the title and legend are different. The title states “Internet Explorer vs Murder Rate” while the legend states “Murders in US and Internet Explorer Market Share”. Both a rate and a market share can be expressed in percentages so which data serie belongs to which Y axis? You tell me please.
A simple redesign of the legend problem could like as follows.
The (self explaining) legend is incorporated in the title of the graph. This has multiple advantages:
- We only state the data series descriptions once.
- We start reading from top to bottom and after we’ve read the title we immediately know which color belongs to which data serie.
- We know which Y axis belongs to which data serie since we added a tiny bit of extra information to the data serie description. We now included the units of measure in the title.
- We don’t need a separate legend.
Back to the double Y-axis issue
At first, my main goal of writing this blog was to illustrate the possible impact of messing around with multiple Y-axes into a single chart. Whilst writing this blog, I found out a lot more was wrong with this graph and I couldn’t keep myself from not explaining some of them. I’m convinced that if I’d dig even further into this simple graph, I could come up with more imperfections but the main goal wasn’t redesigning this graph, but illustrating the risk of using two Y-axes. Back to this issue.
I’ve drawn a couple of examples of different Y-axis scales to show how the message of the simple graph can be completely different when taking a quick look.
Examine the following examples and find out what your first impression would be..
Without looking to much at the Y-axis scales, the story this graph tells is that when the amount of murders decreases with by only the slightest bit, that the market share of IEX crashes completely. Wow.. what a story.
Again, without looking to much at the Y-axis scales, this graph tells a different story. For every US murder case, Internet Explorer relatively looses the same amount of market share.
For this example, I used a redesign of the graph. What story is this graph telling?
Give it a try
I spent about 15 minutes in SAP Dashboards building an interactive demo in which you can play around with the Y-axis scales. This way you can find out what the impact can be of having messy scale ranges next to having two Y-axes in a single graph.
Recently, Anita Gibbings (SAP marketing) posted a message on SCN on the success of the SAP Design Studio (ZEN) beta program. It is the first SAP product ever that goes from beta to general available and with this it skips the phases of released to customer and ramp-up. Well then it must be everything we’ve all been hoping for I suppose?
The main reason is the positive customer feedback, she stated. Since SAP Design Studio is the successor of the Web Application Designer and converges with SAP Dashboards in the future, my personal expectations were quite high, as you can read in the comment section of her post.
Personally, I am not that enthusiastic about this new product. I personally don’t think it lives up to its promises, at least not in the version I’ve been able to work with during the beta.
My main two observations are quite simple.
1. From a design perspective the visual customization options are far too limited.
2. It requires too much coding for creating simple interactive features which make it less accessible to a lot of people.
But hey, maybe I’m wrong and I’ve got just the case to test this..
I am under the lucky circumstances of having a very talented UX designer and BI consultant (he doesn’t see himself as a BI consultant #LOL) as a colleague, Frodo Jansen, and he posted some of his KPI visualisation concepts on Twitter recently.
I’ve been working on a generic concept for KPI visualisation with Frodo for a while now and my interest was caught by this new design concept. I liked the use of color contrast and typography. The next thing I thought was how long it would take to make a quick prototype in SAP Dashboard Design / Xcelsius. Well, this took me just about 20 minutes or even less by starting from a blank canvas.
The result is displayed below.
On the left you see Frodo’s Adobe Illustrator design, on the right my quick SAP Dashboard Design concept. I managed to come quite close to what he drew in Adobe. You can see the SWF here and download the XLF here.
Now back to SAP’s article on SAP Design Studio. The article stated:
“With Design Studio, IT will be able to easily create dashboards and BI apps that can handle large data volumes and complexity to provide the business users with a holistic, trusted view of their business – tailored exactly to their requests and your unique business.”
Ok, tailored exactly to their requests? Then a rather simple but sophisticated KPI design like shown above should be no challenge for a product called ‘Design Studio’ I guess? I’m afraid it will be a challenge.
I do hope I’m wrong with my two observations stated above but at this very moment, I don’t think it’s possible at all in the first place to recreate the KPI above in SAP Design Studio and if it is possible, I think it requires a lot of coding and complex customization you don’t want to confront users with.
So can someone please prove me I’m wrong and show me this is possible?
This week, (May 2012) I had the opportunity to participate in a 3-day Business Intelligence Workshop, hosted by Stephen Few. Without a doubt, he is the data visualization expert with an impressive track record.
For those who don’t know Stephen yet, just launch Google and get overwhelmed by his impressive presence on the web. You’ll find his own website, his books, some software vendor sites (probably Tableau) and also people who are sharing their opinion on Stephen’s views on data visualization.
You’ll probably quickly notice that Stephen isn’t afraid to publicly share his criticism, or positive notes, on the quality of the BI software products of the common large BI software vendors. With this being said, let’s focus on the workshop agenda.
Stephen hadn’t taught his courses in the Netherlands before so I couldn’t miss out on this opportunity, especially since I have a strong focus on data visualization and User Experience design, related to BI. The agenda of the 3-day workshop was based on his books and is described below.
Day 1 – Show Me the Numbers: Table and Graph Design
Day 2 – Information Dashboard Design
In general, all people that are involved in BI or data visualization activities should attend this workshop. No exceptions. Especially people with years of BI experience on their resume should attend the workshop. Many of us have been indoctrinated by software vendors about how a good data visualization should look like.
Sure, we can all build great looking reports and dashboards but that’s not by definition leading to products that really support good decision making. Therefore everybody should invest in three days of their career to attend Stephen’s class to learn and understand all the basics of data visualization. After you know the basics, you can determine to which degree you want to apply them and translate them into the product you develop or use. The point is that from that moment, you’ll be able to make design choices based on your subject knowledge, not on what the customer is asking you.
Remember what Henry Ford said?
“If I’d asked my customers what they wanted, they’d have said a faster horse.
Never aks a customer what he wants the dashboard or report to look like. Ask him where he needs it for and which process it support and why certain details are important. Based on your skill set, including non-technical data visualization skills, you should be able to advise them on how it should look like. Gaining the non-technical data visualization skills therefore is very important.
Stephen mentioned that “Buying MS Powerpoint doesn’t make you a good speaker.” and “Buying MS Office doesn’t make you a good writer”. The same analogy applies for BI software. Buying or a piece of BI software, doesn’t make you a good data analyst or dashboard developer. You need to invest in the basic data visualization skills before you’re able to get the max value out of the products.
During the first two days of training I heard a lot of stuff I already knew because I had already read the first two books. Despite this fact, the interaction and discussion in the group created great value for me, also during these first two days. For me, the third day delivered the greatest value to me.
My view of Stephen
I know there are many people criticizing Stephen’s verdicts of the large software vendors and I must confess that I can understand that. Especially if you’re enthusiastic about the very product being criticized, it can feel a bit like he is criticizing you as a person. But the one and only reason why he is doing this, is because he is not limited by technical product capabilities or customer demands and focusses on the principles of good data visualization and knows there are often more effective solutions. He convinced me that he has no wrong intentions to any person whatsoever. Of course many product vendors are acting like sitting ducks and lure Stephen towards them by producing hilarious marketing slideware including exploding pie charts, tag clouds and other useless stuff.
With this being said, I think it would be better if Stephen would stick to criticizing vendors, instead of involving the faces that fulfill a role at the vendor. This can project a negative shadow on his reputation and personality, of which I think nobody gains anything.
I also brought along a dashboard design I made for one of my customers and he took the time to discuss it in great detail with me. Sure, he had some critique, but ventilated this in a respectful matter. After I explained that the customer wasn’t going to give up some (non-ideal) requirements, he respected that and moved on. He wasn’t ‘looking for a fight’.
In general, my view of Stephen is that he is a very passionate, driven and friendly expert who wants to ‘show the light’ to the more traditional BI audience, purely based on the fact that he sometimes knows more effective ways to bring the message through a data visualization.
The user experience of BI products is really important. There are people who say that Stephen makes ‘boring’ dashboard designs which some people will not like to use. He indeed uses little color and interactivity, but again supported by principles Universities have invested great research in.
Personally, I think there should always be a good balance between Science (Stephens principles) and Art (Visually appealing) and that this balance will result in a better User Experience. By the way, thanks Frodo Jansen for providing this metaphor.Stephen without a doubt shifts more weight onto the side of Science, were others would rather put some more weight on the other side of the scale.
The goal of this blog was to share my experience of the three day workshop. As you’ve read above, I’m very enthusiastic and think that every BI professional should invest three days of his career into this. After the training you are free to reset and adjust your own parameters to the degree of which you want to apply the principles you’ve learned. For me, it opened my eyes that I saw some BI products (e.g. Tableau) that really do some of the thinking for you. This lies in the fact that they’ve been designed from a scientific research perspective, not from a ‘customer wants flashy reports’ perspective.
If you attend the workshop, you’ll be able to save yourself from the pitfalls many BI products have incorporated in them in the form of useless features and clutter. You’ll be able to create BI products that are well balanced on the scale of Science & Art, often regardless of the product itself. That’s what I discovered using SAP BusinessObjects. You can create great products, but first need to learn the basic skills.
Stephen, thanks for sharing your knowledge. It was very inspiring.
There is lots of stuff we’d like to see in a new version of SAP Dashboards / Xcelsius. Probably the HTML5 version will focus mainly on HTML5 export functionality so lets stretch the wish list towards ZEN (I don’t want to type that 2314 counting character official product name).
If I look at SAP Dashboards / Xcelsius I’d love to see the following features being made available in a next version of SAP Dashboards or the new product ZEN. It is quite a wish list and I know that some of these things can be fixed with some creativity, but I’m looking for out-of-the-box functionality.
Here it comes..
- Help screen pop-ups / mouse overs
Now this is possible but requires to much tricks. The time of paper documentation is moving behind us. I’d like to see functionality to easily build integrated help functionality. With this I mean that I don’t need to create a background menu, transparent background to show over the dashboard, 10 custom label objects, a ‘close-window’ push button and some dynamic visibility logic to start the circus. Just provide help menu’s which are easy to configure.
- Decent printing options
I shouldn’t rely on 3rd party solutions for being able to print the dashboard the way I want it, including some simple annotations.
- Decent commenting options
This is not supported. Connecting to a remote database and store/retrieve comments is possible, but too much customizing.
- Flexible change of chart type (like in Webi)
I often use the Combination Chart just in case I want to change the chart type afterwards from line to bar chart. If I don’t do this, I’ll need to reconfigure the cell binding, properties, alignment, etcetera. Webi handles this much better.
- More developer-friendly drag and drop of components and objects
The amount of time you spend to align, resize and position objects can be reduced if this is improved. Selecting objects and moving them around sometimes works a bit buggy. Please fix this.
- New version of the Open Document Statement integration protocol. This should be ‘point-and-click’ easy
I shouldn’t need to be able to read HTML parameters for connecting BI content. Sure, it works OK and offers great functionality but this should be done like a ‘walk down the park’ instead of a ‘walk down the HTML parameter trial-and-error hell’. Make this point-and-click easy with a decent user interface.
- Easier integration between multiple dashboards
Jumping from one dashboard to another including parameters should be easy. This way you should be able to scale your development team without loosing interactivity. Now you often have one big sized dashboard with longer load times etc. Of course you can tune this with dynamic visibility, connection settings etc but cutting one dashboard into smaller pieces can have quite some advantages. Now this is possible, but only for advanced developers.
- Better support for custom fonts (include more than 1 custom font in the dashboard model)
The typography topic for dashboards is often completely skipped. I’ve seen and designed dashboards with a well designed typography model which really made a difference. Now the support for custom fonts is limited. If a user hasn’t got the used fonts on his machine, you can embed them in the dashboard. However, you can only embed one font. And flipping between serif and sans-serif for large headers and titles on one side and small lables and subtitles on the other side requires more than just one font.
- Debug mode for errors
Solving issues is often a complex process. An empty chart pops up. What’s going on? Does the connection not retrieve any data? Is the table range not large enough? Doesn’t the filtered row object pick the right label? Is the chart binded to the wrong cells? Is there a dynamic visability issue? Is there an authorization issue for the user? Is there no data at all in the source? And so on..
An advanced developer will be able to find the issue but this can require quite some time. I have been laughing quite often when an empty error dialog screen popped up in Xcelsius. Laughing only lasted for seconds, than the frustration came..
- CSS editor for easy theme and template creation
Xcelsius has some out of the box themes. Editing these themes is not possible for the average developer. In the installation folders of Xcelsius, CSS files are stored which contain all the styling. I’d like to see a modern CSS editor in which you can load, edit, save and share CSS templates. This way dashboard development can be taken to the next level.
- More flexible and detailed property options for all components
From a design perspective, Xcelsius falls short in some area’s. It does a real great job in the first 95% but as a die-hard, you also want to slam those last 5%. For example, a combination chart has no alerting options (comes in FP3). Setting markers in line charts (sparkline chart excluded) is only possible for every value on the X-axis. I, the designer, want to be able where and how the markers should be applied. For example one on the highest or lowest, and one in the end, not just everywhere.
The default legenda looks just ugly. I want to be able to make a more sophisticated legenda. And why can’t I set the scale range for the microchart? Now two charts cannot be compared since they can have a different scale range. Not to speak about the number of times I had to copy multiple graphs on top of each other to be able to create the chart looking exactly the way I wanted it to do. And for charts with a scale from negative to positive values I want to be able to make the X-axis line for the ’0′ Y-value a bit thicker but I’m only able to make the bottom X-axis line thicker (the lowest value line). This is just a small set of examples of stuff you just wanted to be able to configure slightly different, with a big positive impact on the user experience.
SAP Dashboards / Xcelsius has surprised me time after time by it’s flexibility and ability to realize requirements by applying ‘tricks’ and ‘voodoo magic’. This makes it that I love the product. Possibilities sometimes look endless. But when someone has to support this magic dashboard full of MS Excell spells and dynamic visibility voodoo, you may loose some friends.
Therefore I like to see some of this magic back in the standard component properties and menus. What does your wish list look like?
I’m using SAP Dashboards (Xcelsius) for many years now but nevertheless I still discover some very useful tips & tricks now and then.
The last year, I’ve been heavily investing in my data visualization skills by attending courses, reading books and of course, practicing a lot. One of the things I learned is that the amount of different types of visualizations you’ll be using to visualize data in an optimal manner, is very limited. In most cases, you should mainly use bar/column charts, line charts (including sparklines) or a combination of these.
In fact, the gauges, pie-charts, tab sets etc haven’t been touched in a long while now and perhaps I should pull them off the object menu and slam them on the canvas just to check if they still work. I could almost feel sorry for them since it has large resemblances with Toy Story’s Woody being replaced by Buzz Lightyear. Although Buzz Lightyear has much more visual parade and drama with his sound effects, folding wings, etc so this feels more like trading in Buzz for good old Woody again, I guess. The statement “back to the basics” would apply. Enough Toy Story for now, back to Dashboards in SAP wonderland.
The conclusion is that during the dashboard development process, I use only a very small amount of available objects to create a dashboard to enlighten. Of course I could use exploding pie charts or lots of gauges but I think you’ll understand why I don’t.
Recently, my eyes bumped into the “Favorites” menu as part of the object browser of SAP Dashboards and I thought: “Hey! Wouldn’t it save quite some miles of scrolling the mouse wheel a year, if I added the most used objects into the favorites folder?” Perhaps you already know it but I started using it actively just a couple of weeks ago while setting up SAP Dashboard template XLF’s and custom themes.
All you have to do is open the component browser, right mouse-click an object, and select “add to favorites”
I selected my most used objects and arranged them into the “favorites” category. You cannot change the order of the objects in the favorites category. The object you click first, will be placed on top, the second object below the first one, and so on. It pays off to determine which objects you use most to arrange your clicking order so take a moment to identify the most used objects. Of course you can also delete them afterwards.
If you’re done, it might look something like the image below.
You might be wondering why I placed some of these objects in my favorites folder so let’s explain them a bit further.
I use the Push and Toggle Button very often to control dynamic visibility in dashboards. With these buttons I set, for example, a 1 or a 0 to switch between layers in a dashboard. Layers can be a top level dashboard and a drill down layer for example.
In the prototyping phase, I also often use the Rectangle object to draw objects like backgrounds. I use the Rectangle instead of the background objects because of it’s simplistic, non color gradient design.
The image component is sometimes used for customer branding or adding icons for drill downs. Many applications are possible here.
The Spreadsheet Table object is really crucial in the debugging process. I use this object constant to test data connections with for example SAP BW to quickly see if the data is retrieved correctly in the expected format.
That’s all for now so have fun using the Favorites life hack.