Discussion


Note: Images may be inserted into your messages by uploading a file attachment (see "Manage Attachments"). Even though it doesn't appear when previewed, the image will appear at the end of your message once it is posted.
Register Latest Topics
 
 
 


Reply
  Author   Comment  
javic

Registered:
Posts: 5
Reply with quote  #1 
While my current needs are specific, the problem I face seems generic so I thought it might warrant discussion here. In particular...

I'm designing a dashboard to display performance data for a certain piece of hardware. The information includes current measures and a small amount of historical data for perspective. Associated with some measures are threshold values; if the current measure exceeds the threshold, an exceptional condition is signaled.

I'm recommending to my boss that we apply the principles of "Information Dashboard Design" to this project, as they correlate perfectly with our goals IMO. Consequently, I'm suggesting bullet graphs to show current value relative to threshold (and not coincidentally, the software charting package we've adopted provides a "bullet graph" chart type). My challenge has to do with the thresholds.

Some measures show the percentage used of a finite resource. Users can define thresholds for informational, warning, and critical severity exceptions. These thresholds typically are clustered toward the high end. For example, a typical breakdown might be:

> 90% use = informational
> 95% use = warning
> 99% use = critical

Within a bullet graph, I can use background shading to represent the four zones into which these three values divide the range (from 0% to 100%) but you'll notice the thresholds are all clustered at the high end. Consequently, the bands of color representing threshold regions are increasingly small to the point where the difference between critical use (99%) and exhaustion (100%) in particular is very hard to discern, yet it's (arguably) the most important part of the display.

Now to my question: is there a variant of the bullet graph that somehow emphasizes "interesting" portions of the range to allow greater discrimination there while still showing the full range to some degree? I guess I'm thinking of some kind of "fisheye bullet graph".

Alternatively, I've considered starting the graph at something other than zero (say, around 75%) which would provide greater fidelity at the high end but would also of course suggest that I replace the current-value bar with a current-value dot or similar mark. Also, this approach eliminates some potentially useful information (such as current resource use being very low). And users can pick any values they want for the thresholds (they're typically high but not necessarily so) so a fixed lower bound might not work in all cases.

Another alternative I've toyed with is dividing the range into (up to) four equally sized regions representing the severity levels. This approach emphasizes degree of resource use but creates a non-uniform scale which of course has its own problems.

Any standard (or at least common) method of dealing with this presentation challenge, or evidence that would argue in favor of one approach over another?

jlbriggs

Registered:
Posts: 194
Reply with quote  #2 
I would suggest using the dot marker approach.

However, I would not  set a definite start point for the axis - most charting software will choose an appropriate start point automatically, allowing it to adjust to the data. 

That way you don't have to worry about eliminating scenarios such as low resource use.
javic

Registered:
Posts: 5
Reply with quote  #3 
Thanks for the response. Yes, that approach solves some of the problems. However, with it we potentially sacrifice the ability to easily compare resource usage across dashboard elements, another task that's potentially important. That is, choosing the lower bound dynamically from the data might work well for scaling a single graph to its data, but could potentially yield varying scales across graphs thereby compromising cross-graph comparison. And supporting cross-graph comparison (e.g., "Which of these resources is most underutilized?") is a goal of this dashboard. (One reason I want to show percent usage here is to ensure a common scale across graphs for comparison regardless of actual resource size.)

Maybe this is one of those design problems for which no single graph is sufficient? Not ready to give up yet, though. :-).




jlbriggs

Registered:
Posts: 194
Reply with quote  #4 
"Maybe this is one of those design problems for which no single graph is sufficient?"

That's exactly what I was going to say.

"
Not ready to give up yet, though"

I don't consider it giving up...I consider it simply acknowledging that trying to show everything on a single plot is very often a terrible idea.  Most people consider it some sort of ideal to strive for, for reasons I've never understood.

I also consider accepting this reality early in the design process to be a good to avoid wasting a lot of time :)

javic

Registered:
Posts: 5
Reply with quote  #5 
I'm wondering if something like this (see below) would be effective. At the left are traditional bullet graphs showing actual values relative to three thresholds. Thresholds differ across resources (A, B, C, etc.).

At the right are current values relative to normalized subranges determined by resource-specific thresholds. The marker here shows the subrange in which the current value resides, and shows roughly where within the enclosing subrange the value lies. The absolute numeric limits of subranges are non-uniform both within and across graphs here.

(As I mentioned in my original post, the standard bullet graph like those at left would work if thresholds weren't normally so skewed toward the high end. This example uses fake thresholds that are artificially spread out to illustrate the technique.)

Image1.png

wd

Registered:
Posts: 167
Reply with quote  #6 
Lacking context makes it difficult to comment.  However ...

When I see an item like Percent Resource Use as a single point value, I wonder if a bullet chart is the correct chart.  Would we not be interested in the variation over time, showing how frequently the threshold is approached (headroom available), ... hence a (statistically based) run chart might be more appropriate.

__________________
Bill Droogendyk
jlbriggs

Registered:
Posts: 194
Reply with quote  #7 
@javic - I do think that would work quite well, in fact.

It seems that the qualitative bands should possibly be reversed in color though.
While surely it's up to the individual how to implement, the bands usually work such that light = good / dark = bad.

Since in this case, higher = bad, the color scale should run the opposite direction.

@bill - I agree that historic data is probably important here. I think that for a high level, compare all values view, a simple sparkline with a threshold line for each measure would do the trick.

A click through to an actual control chart for each measure would be a nice addition.
javic

Registered:
Posts: 5
Reply with quote  #8 
Thanks for the additional thoughts.

Agree completely about the value of historical context and trending. My intent is to augment what I've illustrated previously with sparklines of some sort showing recent history, exactly as suggested in the previous post. Here's a sketch of a more complete design I'm playing with:

Image1.png

(BTW the data here is fake, so the display is not necessarily consistent across graphs.)

We also plan on providing drilldown to larger-size and larger-scale charts showing full details and/or additional related measures (to help explain, for example, *why* resource use is high).

It's comforting to get independent confirmation of these plans. Might help to convince my boss, who hasn't read Few's, Tufte's, or Ware's books. :-)

Interesting point about the background colors for threshold regions. My rationale for the design illustrated here is that the increased contrast between foreground and background in areas of high use draws attention to those areas. Since high resource use is typically more interesting than low use, the net effect is to visually emphasize the important bits. In other words, dark marks on a lighter background are more eye-grabbing than dark marks on a darker background, aiding preattentive scanning and pattern matching.

But your point about darker shades typically representing bad (or perhaps "more" in this case) and lighter shades representing good (or "less") is well-taken. Perhaps if I use a lighter color for the value marks, I can apply this convention and still get the emphasis-through-contrast effect I'm after. I'll give that a try.

 

wd

Registered:
Posts: 167
Reply with quote  #9 

Having the trend lines removes the need for some of the other charts.

The sparkline chart (far right) could show where each data point lies vis a vis the threshold rules (w background colouring?). 
The % used could (perhaps) then be turned into a chart showing the frequency of hitting >= 90/95/99% in the last day/week/month/year.  This might also allow elimination of Compared to Thresholds chart.
Might the two Last two weeks charts be redundant?


__________________
Bill Droogendyk
javic

Registered:
Posts: 5
Reply with quote  #10 
> The sparkline...could show...

Not sure I fully understand this comment. The intent of the graph is to show just that: that is, the intent is to show where resource measurements have fallen within the four intervals defined by the three thresholds. (Note the four horizontal bands of background shading, which admittedly don't show up as clearly in my imported picture here as they do in the drawing from which this picture was captured.)

> ...frequency of hitting...

That's an interesting idea, replacing the display of "raw" data with a meaningful derived measure. I'll play with that a bit. Thanks.

> ...redundant?

Yes, there is some redundancy in the two "last two weeks" charts. However, they're an attempt to deal with the challenge that prompted my original post: user-defined thresholds tend to cluster toward the high end (the fake data I used for my sketches doesn't really reflect this trend because the same issues that make it a challenge to display make it challenging to draw :-).

This fact means it's highly likely that some thresholds won't be visible in the first "last two weeks" graph because it's showing actual percent usage along a uniform vertical scale. In particular, the interval between thresholds is likely to map to less than one pixel of vertical space unless the graph is at least 100 pixels tall (thresholds in our product are restricted to whole percents thank goodness).

In contrast, the second "last two weeks" graph uses uniform heights for the intervals between thresholds, which in turn yields sufficient vertical space to always show in which of the four possible intervals each measure lies (at the cost of a non-uniform vertical scale).

In short, the two left-hand graphs show actual values along a uniform percentage scale and are useful for assessing actual resource use (current and recent history) and for comparing usage across resources. They're less useful (or even useless) for showing resource use compared to thresholds.

The two right-hand graphs are the reverse, emphasizing resource use relative to thresholds but being largely ineffective for showing absolute values of resource use, and completely useless for comparing absolute use across resources (although they can be used to compare frequency of threshold violations, which is potentially interesting).

My "spider sense" says this is a lot of on-screen stuff for a Few-style dashboard aimed at monitoring resources, but I (so far) haven't come up with another solution to the skewed-threshold problem (which of course is why I thought I'd involve this community in the first place :-).
jlbriggs

Registered:
Posts: 194
Reply with quote  #11 
"My "spider sense" says this is a lot of on-screen stuff for a Few-style dashboard aimed at monitoring resources"

I agree completely.

I feel that as far as the sparklines are concerned here, the specificity is not as important.

I think that the two separate trends charts could be reduced to one, I feel that the individual threshold zones are not necessary, and I feel that the first column-spark chart is far too visually prominent (far too high ink:data).

I think that for the purposes of this display, a single spark line (not column) showing the actual (non-binned) trend for each measure, with a single threshold line marking the highest alert setting, and a small point marker (like you have already) for points that crossed the threshold would be quite sufficient for what is needed at a glance for a dashboard of this nature.

The more detailed aspects of the trending could be saved for the drill down.


danz

Registered:
Posts: 190
Reply with quote  #12 
javic,

I would not use "skewed" graphs. 
 
Better define an additional variable like "performance score" or "warning level" with a simple formula which interpolates values between the limits of performance intervals (levels). Use that variable to sort the items. If this looks complicated for your audience, skip it. In case is needed, use histograms or box-plots to statistically display historical data (no need for both).

(data has not much sense below, is just a quick sketch using part of your design)

alternative.png 

Dan

Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.