geo.asTracks() function
The geo.asTracks()
function is experimental and subject to change at any time. By using this function, you accept the risks of experimental functions.
The geo.asTracks()
function groups rows into tracks (sequential, related data points).
*Function type: Transformation*
import "experimental/geo"
geo.asTracks(
groupBy: ["id","tid"],
orderBy: ["_time"]
)
Parameters
groupBy
Columns to group by. These columns should uniquely identify each track. Default is ["id","tid"]
.
*Data type: Array of strings*
orderBy
Column to order results by. Default is ["_time"]
*Data type: Array of strings*
Examples
Group tracks in a box-shaped region
import "experimental/geo"
region = {
minLat: 40.51757813,
maxLat: 40.86914063,
minLon: -73.65234375,
maxLon: -72.94921875
}
from(bucket: "example-bucket")
|> range(start: -1h)
|> filter(fn: (r) => r._measurement == "example-measurement")
|> geo.gridFilter(region: region)
|> geo.toRows(correlationKey: ["_time", "id"])
|> geo.asTracks()
Function definition
asTracks = (tables=<-, groupBy=["id","tid"], orderBy=["_time"]) =>
tables
|> group(columns: groupBy)
|> sort(columns: orderBy)