Grafana: Add an option to display stddev as a % around the mean

Created on 14 May 2014  ·  6Comments  ·  Source: grafana/grafana

It would be great to be able to display the standard deviation as a range around the mean (that is a bar, or band, around the curve of the mean), rather than an absolute value.
It is much more readable to be able to see the mean and the range as a whole, and the evolution in time, instead of two values without any relation.

typquestion

Most helpful comment

It's indeed pretty tricky to explain...

In addition to the 'mean' function in queries, there's also 'stddev'. Both will coalesce some data points in the DB into one point in the graph, applying the function. The problem is the way they are displayed in the graph.
Here's an example, quickly drawn in Excel, with the stddev expressed in %:
screen shot 2014-05-15 at 13 35 56

In terms of readability, this is really not the best that can be done. The stddev is relative to the mean, so it doesn't mean much by itself.

Some more readable ways would be to:

  • display a line for the mean, and trace, on each point, a bar showing the min and max of the deviation around it (half above, half below)
  • display a line for the mean, and a band (with inside color or not) around the curve for the mean. This is pretty similar to what's done with Bollinger Bands in financial graphs. (example below)
    screen shot 2014-05-15 at 13 37 17

That way, you have a line showing you the mean, since it is the main information on the graph, then a curve or bars around that curve to show how it deviates, with the absolute evolution over time.

All 6 comments

Could you describe in a little more detail what you mean? Do you want stddev in the graph? It would only be a straight line. Or do you want a moving stddev or based on a graphite function?

It's indeed pretty tricky to explain...

In addition to the 'mean' function in queries, there's also 'stddev'. Both will coalesce some data points in the DB into one point in the graph, applying the function. The problem is the way they are displayed in the graph.
Here's an example, quickly drawn in Excel, with the stddev expressed in %:
screen shot 2014-05-15 at 13 35 56

In terms of readability, this is really not the best that can be done. The stddev is relative to the mean, so it doesn't mean much by itself.

Some more readable ways would be to:

  • display a line for the mean, and trace, on each point, a bar showing the min and max of the deviation around it (half above, half below)
  • display a line for the mean, and a band (with inside color or not) around the curve for the mean. This is pretty similar to what's done with Bollinger Bands in financial graphs. (example below)
    screen shot 2014-05-15 at 13 37 17

That way, you have a line showing you the mean, since it is the main information on the graph, then a curve or bars around that curve to show how it deviates, with the absolute evolution over time.

Being able to plot the standard deviation of an entire graph as a fill with an upper and lower bound would help find mean points that are outliers of the standard deviation. +1 to some variation of the above.

needs to implemented in time series store (in query), before aggregation

Please, how to do it?

It is possible to graph deviations around a metric using the "fill below" display option. See #940 for more details.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

speede05 picture speede05  ·  3Comments

bperel picture bperel  ·  3Comments

KlavsKlavsen picture KlavsKlavsen  ·  3Comments

Azef1 picture Azef1  ·  3Comments

guillaume-u picture guillaume-u  ·  3Comments