Hallo,
ich verwende grafana in Verbindung mit influxdb2. Ich benutze influxdb in einem LXC-Container und grafana als Add on in home assistant.
Dabei geht es um die Darstellung eines ständig steigenden Zählerwerts. Ich möchte den täglichen Verbrauch in einem Balkendiagramm darstellen.
Dazu habe ich folgendes Query gebaut:
import "date"
import "timezone"
import "generate"
option location = timezone.location(name:"Europe/Berlin")
dayStart = date.truncate(t:today(), unit: 1d)
yearStart = date.truncate(t:today(), unit: 1y)
from(bucket: "shortterm")
|> range(start: yearStart, stop: dayStart)
|> filter(fn: (r) => r["entity_id"] == "heatenergy")
|> filter(fn: (r) => r["_field"] == "value")
|> aggregateWindow(every: 1d, fn: last, createEmpty: false)
|> difference()
|> map(fn: (r) => ({
r with
vortag: date.sub(from: r._time, d: 1m),
value_kWh: r._value * 1000.0
}))
|> keep(columns: ["vortag", "value_kWh"])
Für die Differenz ist immer der timestamp von 0:00 Uhr eingetragen. Somit entspricht der Wert dem Tagesverbrauch des Vortages. Daher habe ich eine Minute vom timestamp abgezogen und in dem Feld „vortag“ gespeichert.
Ich bekomme es in grafana allerdings nicht hin, dass dieses berechnete Feld „vortag“ für die x-Achse verwendet wird.
Wie bekomme ich es hin, dass der Wert der Differenz dem richtigen Tag zugeordnet wird?
Vielen Dank im voraus.
Gruß
Schorsch


