UNLAG

Parameters

OrderNameTypeDesc
1apoint listA list of points that have history
2bConstA number of seconds to 'bump' the requested range

Returns

Places an updated version of the point list on the stack.

Description

This function is used to adjust the times in a set of points that contain history (ie. from a call to GETHISTORY).

Positive amounts will move the timestamps in the history forward in time, while negative amounts will move the results backwards in time.

This function is normally used along-side LAG, when you want to compensate for a time-lag between assets. It's particularly useful in products such as Grafana, where you might be mixing channels of data from a variety of sources.

NOTE: For analytics purposes, you might find the LagCorrectedQuery Python class or ARDI addon more useful if your lag is data-driven.

Example

If we want to mix several channels of data with different amounts of lag, we need to make sure that our resulting data all has the same X axis.

If we run this query…

 'Asset A' ASSET 'Power' PROPERTY VALUES {"range": "15 minutes"} 120 LAG GETHISTORY
 'Asset B' ASSET 'Power' PROPERTY VALUES {"range": "15 minutes"} GETHISTORY APPEND

We get a set of 2 different points with history. If we ran the query at 2:00 in the afternoon, Asset A Power would have data from 1:43 to 1:58 and Asset B Power would have data from 1:45 to 2:00.

If we wanted to compare these points of data visually, we need to pull the time-stamps of data from Asset A forward so it matches the range of Asset B, letting us chart them on the same X axis.

 'Asset A' ASSET 'Power' PROPERTY VALUES {"range": "15 minutes"} 120 LAG GETHISTORY 120 UNLAG

This function gives you the data from 1:43 to 1:58, but with the timestamps from 1:45 to 2:00 - allowing you to synchronise the channels and compensate for the lag.

See Also

LAG