This does work. I had to also add a column statement in the aggregate window to specify the new name and also did some regex transformations to remove the start and stop info in the legend.
Thanks
This does work. I had to also add a column statement in the aggregate window to specify the new name and also did some regex transformations to remove the start and stop info in the legend.
Thanks
I reformatted the queries into 1 query in case it might help someone:
set energy = from(bucket: "xianenergyd")
|> range(start: -30d)
|> filter(fn: (r) => r._measurement == "xianenergy")
|> filter(fn: (r) => r._field == "MAIN1_W" or r._field == "MAIN2_W" or r._field == "SOLAR1_W" or r._field == "SOLAR2_W" or r._field == "HOUSE1_W" or r._field == "HOUSE2_W" or r._field == "GARAGE1_W" or r._field == "GARAGE2_W" or r._field == "PI1_W" or r._field == "PI2_W" or r._field == "POOL1_W" or r._field == "POOL2_W" or r._field == "HVAC1_W" or r._field == "HVAC2_W" or r._field == "SHED1_W" or r._field == "SHED2_W" or r._field == "EV1_W" or r._field == "EV2_W" or r._field == "AC21_W" or r._field == "AC22_W" or r._field == "AC11_W" or r._field == "AC12_W")
|> aggregateWindow(every: 1h, fn: mean, createEmpty: false)
|> aggregateWindow(every: 1mo, offset: 7h, fn: sum, timeSrc:"_start")
|> pivot(rowKey: ["_time"], columnKey: ["_field"], valueColumn: "_value")
|> map(fn: (r) => ({ r with grid: r.MAIN1_W + r.MAIN2_W}))
|> map(fn: (r) => ({ r with solar: r.SOLAR1_W + r.SOLAR2_W}))
|> map(fn: (r) => ({ r with main: r.HOUSE1_W + r.HOUSE2_W + r.GARAGE1_W + r.GARAGE2_W + r.PI1_W + r.PI2_W + r.POOL1_W + r.POOL2_W + r.HVAC1_W + r.HVAC2_W + r.SHED1_W + r.SHED2_W + r.EV1_W + r.EV2_W}))
|> map(fn: (r) => ({ r with battery: r.AC21_W + r.AC22_W - r.AC11_W - r.AC12_W}))
|> drop(columns: ["MAIN1_W","MAIN2_W","SOLAR1_W","SOLAR2_W","HOUSE1_W","HOUSE2_W","GARAGE1_W","GARAGE2_W","PI1_W","PI2_W","POOL1_W","POOL2_W","HVAC1_W","HVAC2_W","SHED1_W","SHED2_W","EV1_W","EV2_W","AC22_W","AC21_W","AC11_W","AC12_W"])
energy
|> yield(name: "energy")