holtwinters() Query Function

Used to generate a trendline for a periodic dataset. The key parameter period specifies the length of the period to be applied. This is used after a timechart, as in timechart(...) | holtwinters(1week). The function implements triple exponential smoothing, and adds an extra graph for every series in the graph. The computation assumes periodic data set (the period parameter specifies the length of the period), such as daily or weekly traffic measurements. The function works best when the timecharts span (with of each bucket) is a multiple of the period, as the smoothing is done in units of the buckets.

For example, a 30 day chart with a 7 day period would have 4 periods from day 2 to 30 (the first 2 days being ignored). Based on this, the first 3 periods (in this case period 1, 2 and 3) are fed into the smoothing/forecast computation, producing a “forecast” for the fourth period. Smoothing data for period 2, 3 and 4 are emitted, the last period being entirely computed.

Parameters

Name

Type

Required

Default

Description

period

string

Yes

Defines the trend’s period, such as 1week or 1day.

alpha

number

No

Data smoothing factor in the interval [0..1].

beta

number

No

Trend smoothing factor in the interval [0..1].

gamma

number

No

Seasonal change smoothing in the interval [0..1].

The implied parameter is period.

Examples

Show event count graph with daily aggregates and compute the weekly trend.

humio
timechart(function=count(), span=1d) | holtwinters(period=7d)