Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Grafana Visualisierung -> Tagesverbrauch

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Grafana Visualisierung -> Tagesverbrauch

Geplant Angeheftet Gesperrt Verschoben Off Topic
13 Beiträge 3 Kommentatoren 1.4k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • D Offline
    D Offline
    danwir
    schrieb am zuletzt editiert von danwir
    #1

    Guten tag, ich bin ganz neu hier im Forum und poste mal mein Problem. Ich würde gerne über die Influx DB und darauf aufgesetzt über Grafana eine Visualisierung machen. in SQL wie früher wäre das kein Problem aber mit dem neuen FLUX komme ich garnicht zurecht.

    Ich habe in einer DB z.B. ganz simpel Werte vom Stromzähler drin. demnach wieviel Verbrauch am Tag mehrere Datenpunkte. Also auch mal sehr viele und nicht nur einen.

    Ich möchte einfach meinen Verbrauch am Tag visualisieren. Also wenn ich morgens 30 KWh hatte und Abends 45 kWh auf dem Zähler habe ich wohl 15kWh am Tag verbraucht. Ich bekomme das einfach nicht hin, bin schon 2 Tage am suchen inkl. ChatGPT.

    Mein Gedanke war über FIRST() und LAST() wert von einem Tag zu gehen und darüber die Differenz zu berechnen. Klingt einfach .. bricht mir aber das Genick. Das ich das nachher über mehrere Tage haben möchte soweit will ich gar nicht denken.

    Mein Ansatz... zeigt mir auch wunderbar den letzten Stand an jedem Tag an.

    import "date"
    from(bucket: "IR_Lesekopf_Zaehler")
    |> range(start: date.truncate(t: -7d, unit: 1d), stop: date.truncate(t: now(), unit: 1d))
      |> filter(fn: (r) => r._measurement == "Zaehlerstand_Summe_ZU" and r._field == "value")
      |> aggregateWindow(every: 1d, fn: last)
    

    Statt last kann ich auch first nehmen, der Zeigt mir auch wunderbar den Zählerstand morgens als erstes an. Ich würde aber gerne dei Differenz aus beiden haben.

    Kann mir jemand dabei Helfen ?

    Meister MopperM 1 Antwort Letzte Antwort
    0
    • D danwir

      Guten tag, ich bin ganz neu hier im Forum und poste mal mein Problem. Ich würde gerne über die Influx DB und darauf aufgesetzt über Grafana eine Visualisierung machen. in SQL wie früher wäre das kein Problem aber mit dem neuen FLUX komme ich garnicht zurecht.

      Ich habe in einer DB z.B. ganz simpel Werte vom Stromzähler drin. demnach wieviel Verbrauch am Tag mehrere Datenpunkte. Also auch mal sehr viele und nicht nur einen.

      Ich möchte einfach meinen Verbrauch am Tag visualisieren. Also wenn ich morgens 30 KWh hatte und Abends 45 kWh auf dem Zähler habe ich wohl 15kWh am Tag verbraucht. Ich bekomme das einfach nicht hin, bin schon 2 Tage am suchen inkl. ChatGPT.

      Mein Gedanke war über FIRST() und LAST() wert von einem Tag zu gehen und darüber die Differenz zu berechnen. Klingt einfach .. bricht mir aber das Genick. Das ich das nachher über mehrere Tage haben möchte soweit will ich gar nicht denken.

      Mein Ansatz... zeigt mir auch wunderbar den letzten Stand an jedem Tag an.

      import "date"
      from(bucket: "IR_Lesekopf_Zaehler")
      |> range(start: date.truncate(t: -7d, unit: 1d), stop: date.truncate(t: now(), unit: 1d))
        |> filter(fn: (r) => r._measurement == "Zaehlerstand_Summe_ZU" and r._field == "value")
        |> aggregateWindow(every: 1d, fn: last)
      

      Statt last kann ich auch first nehmen, der Zeigt mir auch wunderbar den Zählerstand morgens als erstes an. Ich würde aber gerne dei Differenz aus beiden haben.

      Kann mir jemand dabei Helfen ?

      Meister MopperM Online
      Meister MopperM Online
      Meister Mopper
      schrieb am zuletzt editiert von
      #2

      @danwir

      Ich zeige den Tagesverbrauch hiermit an

      import "timezone"
      option location = timezone.location(name: "Europe/Berlin")
      
      from(bucket: "iobroker")
        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
        |> filter(fn: (r) => r["_measurement"] == "0_userdata.0.Energie.PV.Tagesverbrauch" and r["_field"] == "value")
        |> difference()
        |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
      

      Proxmox und HA

      D 1 Antwort Letzte Antwort
      1
      • Meister MopperM Meister Mopper

        @danwir

        Ich zeige den Tagesverbrauch hiermit an

        import "timezone"
        option location = timezone.location(name: "Europe/Berlin")
        
        from(bucket: "iobroker")
          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
          |> filter(fn: (r) => r["_measurement"] == "0_userdata.0.Energie.PV.Tagesverbrauch" and r["_field"] == "value")
          |> difference()
          |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
        
        D Offline
        D Offline
        danwir
        schrieb am zuletzt editiert von
        #3

        @meister-mopper Hallo, ja super das funktioniert...

        Damit ich das verstehe... man berechnet alle Differenzen aus allen Werten und summiert die dann zusammen

        Meister MopperM 1 Antwort Letzte Antwort
        0
        • D danwir

          @meister-mopper Hallo, ja super das funktioniert...

          Damit ich das verstehe... man berechnet alle Differenzen aus allen Werten und summiert die dann zusammen

          Meister MopperM Online
          Meister MopperM Online
          Meister Mopper
          schrieb am zuletzt editiert von
          #4

          @danwir

          Die Differenz zwischen Tagesstart und Tagesende.

          Proxmox und HA

          Marc BergM 1 Antwort Letzte Antwort
          0
          • Meister MopperM Meister Mopper

            @danwir

            Die Differenz zwischen Tagesstart und Tagesende.

            Marc BergM Offline
            Marc BergM Offline
            Marc Berg
            Most Active
            schrieb am zuletzt editiert von Marc Berg
            #5

            @meister-mopper sagte in Grafana Visualisierung -> Tagesverbrauch:

            Die Differenz zwischen Tagesstart und Tagesende.

            Im Ergebnis stimmt das zwar, aber @danwir hat schon recht. Es werden zunächst die Differenzen aller Einzelwerte errechnet, danach die Summe aller Differenzen eines Tages.
            Man könnte das ganze auch umdrehen:

              |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
              |> difference()
            

            So wird erst der letzte Wert eines Tages ermittelt ("fn_ last"), um dann die Differenz aus den einzelnen Tageswerten zu berechnen.

            NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

            Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

            Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

            Meister MopperM 1 Antwort Letzte Antwort
            0
            • Marc BergM Marc Berg

              @meister-mopper sagte in Grafana Visualisierung -> Tagesverbrauch:

              Die Differenz zwischen Tagesstart und Tagesende.

              Im Ergebnis stimmt das zwar, aber @danwir hat schon recht. Es werden zunächst die Differenzen aller Einzelwerte errechnet, danach die Summe aller Differenzen eines Tages.
              Man könnte das ganze auch umdrehen:

                |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
                |> difference()
              

              So wird erst der letzte Wert eines Tages ermittelt ("fn_ last"), um dann die Differenz aus den einzelnen Tageswerten zu berechnen.

              Meister MopperM Online
              Meister MopperM Online
              Meister Mopper
              schrieb am zuletzt editiert von Meister Mopper
              #6

              @marc-berg sagte in Grafana Visualisierung -> Tagesverbrauch:

              So wird erst der letzte Wert eines Tages ermittelt ("fn_ last"), um dann die Differenz aus den einzelnen Tageswerten zu berechnen.

              Ich lasse den Tagesverbrauch für den jeweils laufenden Monat anzeigen. Mit deiner Variante wird der erste Tag im Monat unterschlagen.

              Proxmox und HA

              D 1 Antwort Letzte Antwort
              0
              • Meister MopperM Meister Mopper

                @marc-berg sagte in Grafana Visualisierung -> Tagesverbrauch:

                So wird erst der letzte Wert eines Tages ermittelt ("fn_ last"), um dann die Differenz aus den einzelnen Tageswerten zu berechnen.

                Ich lasse den Tagesverbrauch für den jeweils laufenden Monat anzeigen. Mit deiner Variante wird der erste Tag im Monat unterschlagen.

                D Offline
                D Offline
                danwir
                schrieb am zuletzt editiert von
                #7

                JA super dann hab ich das verstanden, Danke euch. Kann man das auch auf Monate anwenden ? hab es genau so versucht klappt aber nicht-

                import "date"
                import "timezone"
                option location = timezone.location(name: "Europe/Berlin")
                
                from(bucket: "IR_Lesekopf_Zaehler")
                |> range(start: date.truncate(t: -3mo, unit: 1d), stop: date.truncate(t: now(), unit: 1d))
                  |> filter(fn: (r) => r._measurement == "Zaehlerstand_Summe_ZU" and r._field == "value")
                  |> difference()
                  |> aggregateWindow(every: 1mo, fn: sum)
                

                auch mit Anpassung in der range ... unit: 1mo, klappt es nicht

                Meister MopperM 1 Antwort Letzte Antwort
                0
                • D danwir

                  JA super dann hab ich das verstanden, Danke euch. Kann man das auch auf Monate anwenden ? hab es genau so versucht klappt aber nicht-

                  import "date"
                  import "timezone"
                  option location = timezone.location(name: "Europe/Berlin")
                  
                  from(bucket: "IR_Lesekopf_Zaehler")
                  |> range(start: date.truncate(t: -3mo, unit: 1d), stop: date.truncate(t: now(), unit: 1d))
                    |> filter(fn: (r) => r._measurement == "Zaehlerstand_Summe_ZU" and r._field == "value")
                    |> difference()
                    |> aggregateWindow(every: 1mo, fn: sum)
                  

                  auch mit Anpassung in der range ... unit: 1mo, klappt es nicht

                  Meister MopperM Online
                  Meister MopperM Online
                  Meister Mopper
                  schrieb am zuletzt editiert von
                  #8

                  @danwir

                  Hier monatlich:

                  from(bucket: "iobroker")
                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                    |> filter(fn: (r) => r["_measurement"] == "smartmeter.0.1-0:1_8_0__255.value" and r["_field"] == "value")
                    |> difference()
                    |> aggregateWindow(every: 1mo, fn: sum, timeSrc: "_start")
                  

                  Proxmox und HA

                  D 1 Antwort Letzte Antwort
                  0
                  • Meister MopperM Meister Mopper

                    @danwir

                    Hier monatlich:

                    from(bucket: "iobroker")
                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                      |> filter(fn: (r) => r["_measurement"] == "smartmeter.0.1-0:1_8_0__255.value" and r["_field"] == "value")
                      |> difference()
                      |> aggregateWindow(every: 1mo, fn: sum, timeSrc: "_start")
                    
                    D Offline
                    D Offline
                    danwir
                    schrieb am zuletzt editiert von
                    #9

                    @meister-mopper said in Grafana Visualisierung -> Tagesverbrauch:

                    |> range(start: v.timeRangeStart, stop: v.timeRangeStop)

                    bei mir ist das ein Monat versetzt.. Hab jetzt schon daten für August drin HAHA

                    Meister MopperM 1 Antwort Letzte Antwort
                    0
                    • D danwir

                      @meister-mopper said in Grafana Visualisierung -> Tagesverbrauch:

                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)

                      bei mir ist das ein Monat versetzt.. Hab jetzt schon daten für August drin HAHA

                      Meister MopperM Online
                      Meister MopperM Online
                      Meister Mopper
                      schrieb am zuletzt editiert von
                      #10

                      @danwir sagte in Grafana Visualisierung -> Tagesverbrauch:

                      bei mir ist das ein Monat versetzt..

                      Wie sehen da die query options aus?

                      Proxmox und HA

                      D 1 Antwort Letzte Antwort
                      0
                      • Meister MopperM Meister Mopper

                        @danwir sagte in Grafana Visualisierung -> Tagesverbrauch:

                        bei mir ist das ein Monat versetzt..

                        Wie sehen da die query options aus?

                        D Offline
                        D Offline
                        danwir
                        schrieb am zuletzt editiert von
                        #11

                        @meister-mopper

                        max data points: 873
                        min interval: no limit
                        interval : 3h
                        relativ Time : 1h
                        time shift: 1h

                        Meister MopperM 1 Antwort Letzte Antwort
                        0
                        • D danwir

                          @meister-mopper

                          max data points: 873
                          min interval: no limit
                          interval : 3h
                          relativ Time : 1h
                          time shift: 1h

                          Meister MopperM Online
                          Meister MopperM Online
                          Meister Mopper
                          schrieb am zuletzt editiert von
                          #12

                          @danwir

                          693e114f-176b-490d-b472-28c03cc5c54f-grafik.png

                          Proxmox und HA

                          D 1 Antwort Letzte Antwort
                          0
                          • Meister MopperM Meister Mopper

                            @danwir

                            693e114f-176b-490d-b472-28c03cc5c54f-grafik.png

                            D Offline
                            D Offline
                            danwir
                            schrieb am zuletzt editiert von danwir
                            #13

                            @meister-mopper verbrauch.JPG

                            mhhh probiere noch was rum, zumindest schon mal auf dem richtigen weg

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            631

                            Online

                            32.7k

                            Benutzer

                            82.4k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe