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
  5. Stapel-Balkengrafik mit Grafana

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.6k

Stapel-Balkengrafik mit Grafana

Geplant Angeheftet Gesperrt Verschoben Grafana
76 Beiträge 7 Kommentatoren 7.9k Aufrufe 6 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.
  • L Laser

    @mickemup
    f4184a1f-eade-4c4b-a5ab-fc248efd451d-image.png

    Da wird ohnehin etwas gewüstet mit den Werten. Ich brauche für 1 Tag nur einen Wert.

    mickemupM Offline
    mickemupM Offline
    mickemup
    schrieb am zuletzt editiert von
    #30

    @laser
    So wie es scheint werden auch heute noch Werte für Montag geloggt (mit konstantem Wert)
    Dann wird es etwas kompliziert mit der Query Abfrage.
    Als Alternative könntest du in Influx nur Veränderungen loggen, das spart auch etwas Speicher und ist ja nicht nötig, dass der Wert immer wieder geloggt wird, wenn sich nichts ändert..

    L 1 Antwort Letzte Antwort
    0
    • mickemupM mickemup

      @laser
      So wie es scheint werden auch heute noch Werte für Montag geloggt (mit konstantem Wert)
      Dann wird es etwas kompliziert mit der Query Abfrage.
      Als Alternative könntest du in Influx nur Veränderungen loggen, das spart auch etwas Speicher und ist ja nicht nötig, dass der Wert immer wieder geloggt wird, wenn sich nichts ändert..

      L Offline
      L Offline
      Laser
      schrieb am zuletzt editiert von Laser
      #31

      @mickemup Damit werde ich anfangen. Es werden ja viel zu viele unnütze Werte geschrieben. Jede Minute und bei Änderungen.

      mickemupM W 2 Antworten Letzte Antwort
      0
      • L Laser

        @mickemup Damit werde ich anfangen. Es werden ja viel zu viele unnütze Werte geschrieben. Jede Minute und bei Änderungen.

        mickemupM Offline
        mickemupM Offline
        mickemup
        schrieb am zuletzt editiert von mickemup
        #32

        @laser
        Macht Sinn
        Nur Änderungen sollte passen
        Und dann wirds auch in Grafana nachher einfach(er)..

        1 Antwort Letzte Antwort
        1
        • L Laser

          @mickemup Damit werde ich anfangen. Es werden ja viel zu viele unnütze Werte geschrieben. Jede Minute und bei Änderungen.

          W Online
          W Online
          wolfi913
          schrieb am zuletzt editiert von
          #33

          @laser sagte in Stapel-Balkengrafik mit Grafana:

          @mickemup Damit werde ich anfangen. Es werden ja viel zu viele unnütze Werte geschrieben. Jede Minute und bei Änderungen.

          Wenn Du da eh was mit dem Logging umstellst könntest Du dann ja auch Screenshot 2025-02-04 163833.png
          nehmen. Dann wäre nicht alles auf 7 measurements verteilt, sondern in einem. Das würde die ganze Auswertung um Vieles vereinfachen.

          mickemupM 1 Antwort Letzte Antwort
          0
          • W wolfi913

            @laser sagte in Stapel-Balkengrafik mit Grafana:

            @mickemup Damit werde ich anfangen. Es werden ja viel zu viele unnütze Werte geschrieben. Jede Minute und bei Änderungen.

            Wenn Du da eh was mit dem Logging umstellst könntest Du dann ja auch Screenshot 2025-02-04 163833.png
            nehmen. Dann wäre nicht alles auf 7 measurements verteilt, sondern in einem. Das würde die ganze Auswertung um Vieles vereinfachen.

            mickemupM Offline
            mickemupM Offline
            mickemup
            schrieb am zuletzt editiert von
            #34

            @wolfi913
            Ja das würde die Arbeit im Grafana deutlich vereinfachen:+1:
            @Laser Logg doch mal den Wert bei deinen zwei? Datenpunkten und dann kommen wir mit zwei Queries zurecht :-)

            L 1 Antwort Letzte Antwort
            0
            • mickemupM mickemup

              @wolfi913
              Ja das würde die Arbeit im Grafana deutlich vereinfachen:+1:
              @Laser Logg doch mal den Wert bei deinen zwei? Datenpunkten und dann kommen wir mit zwei Queries zurecht :-)

              L Offline
              L Offline
              Laser
              schrieb am zuletzt editiert von
              #35

              @mickemup @wolfi913 Nur CurrentDay. Da ohnehin in die Datenbank geschrieben wird, reicht das ja. Sehr gute Idee!

              mickemupM 1 Antwort Letzte Antwort
              0
              • L Laser

                @mickemup @wolfi913 Nur CurrentDay. Da ohnehin in die Datenbank geschrieben wird, reicht das ja. Sehr gute Idee!

                mickemupM Offline
                mickemupM Offline
                mickemup
                schrieb am zuletzt editiert von
                #36

                @laser
                Also natürlich CurrentDay bei allen die du stapeln willst ;-)
                Das sind ja minimum zwei oder?

                L 1 Antwort Letzte Antwort
                0
                • mickemupM mickemup

                  @laser
                  Also natürlich CurrentDay bei allen die du stapeln willst ;-)
                  Das sind ja minimum zwei oder?

                  L Offline
                  L Offline
                  Laser
                  schrieb am zuletzt editiert von Laser
                  #37

                  @mickemup Insgesamt 4 Werte. Der Tagesverlauf ist nicht wichtig. Nur der Endwert.

                  mickemupM W 2 Antworten Letzte Antwort
                  0
                  • L Laser

                    @mickemup Insgesamt 4 Werte. Der Tagesverlauf ist nicht wichtig. Nur der Endwert.

                    mickemupM Offline
                    mickemupM Offline
                    mickemup
                    schrieb am zuletzt editiert von
                    #38

                    @laser Perfekt
                    Dann ab ans loggen und am besten pro DP ein Query schon mal erstellen.

                    Aja und die Queries am besten dann mit Codetags anstatt printscreens hier rein.
                    Dann kann man sie direkt anpassen und du sie auch elegant wieder zurückkopieren

                    1 Antwort Letzte Antwort
                    2
                    • L Laser

                      @mickemup Insgesamt 4 Werte. Der Tagesverlauf ist nicht wichtig. Nur der Endwert.

                      W Online
                      W Online
                      wolfi913
                      schrieb am zuletzt editiert von
                      #39

                      @laser sagte in Stapel-Balkengrafik mit Grafana:

                      @mickemup Insgesamt 4 Werte.

                      Und dann je eine Query nach etwa diesem Schema:

                      import "timezone"
                      import "date"
                      option location = timezone.location(name: "Europe/Berlin")
                      
                      from(bucket: "smarthome-history")
                        |> range(start: date.add(d: -7d, to: today()), stop: date.truncate(t: today(), unit: 1d))
                        |> filter(fn: (r) => r["_measurement"] == "modbus.0.inputRegisters.13022_Battery_level_")
                        |> filter(fn: (r) => r["_field"] == "value")
                        |> aggregateWindow(every: 1d, fn: last, createEmpty: true, timeSrc: "_start")
                      
                      L mickemupM 2 Antworten Letzte Antwort
                      0
                      • W wolfi913

                        @laser sagte in Stapel-Balkengrafik mit Grafana:

                        @mickemup Insgesamt 4 Werte.

                        Und dann je eine Query nach etwa diesem Schema:

                        import "timezone"
                        import "date"
                        option location = timezone.location(name: "Europe/Berlin")
                        
                        from(bucket: "smarthome-history")
                          |> range(start: date.add(d: -7d, to: today()), stop: date.truncate(t: today(), unit: 1d))
                          |> filter(fn: (r) => r["_measurement"] == "modbus.0.inputRegisters.13022_Battery_level_")
                          |> filter(fn: (r) => r["_field"] == "value")
                          |> aggregateWindow(every: 1d, fn: last, createEmpty: true, timeSrc: "_start")
                        
                        L Offline
                        L Offline
                        Laser
                        schrieb am zuletzt editiert von
                        #40

                        @wolfi913 Habe jetzt currentDay und jede Stunde und Änderungen 2. Stelle nach dem Komma eingestellt.

                        mickemupM 1 Antwort Letzte Antwort
                        0
                        • W wolfi913

                          @laser sagte in Stapel-Balkengrafik mit Grafana:

                          @mickemup Insgesamt 4 Werte.

                          Und dann je eine Query nach etwa diesem Schema:

                          import "timezone"
                          import "date"
                          option location = timezone.location(name: "Europe/Berlin")
                          
                          from(bucket: "smarthome-history")
                            |> range(start: date.add(d: -7d, to: today()), stop: date.truncate(t: today(), unit: 1d))
                            |> filter(fn: (r) => r["_measurement"] == "modbus.0.inputRegisters.13022_Battery_level_")
                            |> filter(fn: (r) => r["_field"] == "value")
                            |> aggregateWindow(every: 1d, fn: last, createEmpty: true, timeSrc: "_start")
                          
                          mickemupM Offline
                          mickemupM Offline
                          mickemup
                          schrieb am zuletzt editiert von
                          #41

                          @wolfi913
                          mir der Range können wir ja noch schauen, was genau gewollt ist.
                          Eventuell auch via "Query Options"
                          Aber das ist dann Feintuning

                          W 1 Antwort Letzte Antwort
                          0
                          • L Laser

                            @wolfi913 Habe jetzt currentDay und jede Stunde und Änderungen 2. Stelle nach dem Komma eingestellt.

                            mickemupM Offline
                            mickemupM Offline
                            mickemup
                            schrieb am zuletzt editiert von
                            #42

                            @laser
                            Wenn dich nur der Endwert intressiert, musst du nicht jede Stunde loggen.
                            Änderungen loggen sollte IMHO ausreichen.

                            L 1 Antwort Letzte Antwort
                            0
                            • mickemupM mickemup

                              @laser
                              Wenn dich nur der Endwert intressiert, musst du nicht jede Stunde loggen.
                              Änderungen loggen sollte IMHO ausreichen.

                              L Offline
                              L Offline
                              Laser
                              schrieb am zuletzt editiert von Laser
                              #43

                              @mickemup Ja, eigentlich. Jede Stunde, da sieht man etwas bei der Kurvendarstellung. Manchmal ändert sich nichts. Wenn das Alles funktioniert, nehme ich das raus. Wenn ich es nicht vergesse, wie die 600 Sekunden...

                              mickemupM 1 Antwort Letzte Antwort
                              0
                              • L Laser

                                @mickemup Ja, eigentlich. Jede Stunde, da sieht man etwas bei der Kurvendarstellung. Manchmal ändert sich nichts. Wenn das Alles funktioniert, nehme ich das raus. Wenn ich es nicht vergesse, wie die 600 Sekunden...

                                mickemupM Offline
                                mickemupM Offline
                                mickemup
                                schrieb am zuletzt editiert von
                                #44

                                @laser Ok, trifft ja nicht so viel an.
                                Und mit jeder Stunde, kreierst die auch nicht extrem viel unnötigen "Datenmüll"

                                1 Antwort Letzte Antwort
                                0
                                • mickemupM mickemup

                                  @wolfi913
                                  mir der Range können wir ja noch schauen, was genau gewollt ist.
                                  Eventuell auch via "Query Options"
                                  Aber das ist dann Feintuning

                                  W Online
                                  W Online
                                  wolfi913
                                  schrieb am zuletzt editiert von
                                  #45

                                  @mickemup sagte in Stapel-Balkengrafik mit Grafana:

                                  mir der Range können wir ja noch schauen, was genau gewollt ist.

                                  Klar, dazu müssen ja zuerst mal Daten geloggt sein.
                                  Mein Beispiel würde ja auch den aktuellen Tag abschneiden und nicht anzeigen sondern nur vollständige Tage.

                                  L 1 Antwort Letzte Antwort
                                  0
                                  • W wolfi913

                                    @mickemup sagte in Stapel-Balkengrafik mit Grafana:

                                    mir der Range können wir ja noch schauen, was genau gewollt ist.

                                    Klar, dazu müssen ja zuerst mal Daten geloggt sein.
                                    Mein Beispiel würde ja auch den aktuellen Tag abschneiden und nicht anzeigen sondern nur vollständige Tage.

                                    L Offline
                                    L Offline
                                    Laser
                                    schrieb am zuletzt editiert von Laser
                                    #46

                                    @wolfi913 ich miste erst mal aus. Habe auch noch die einzelnen Monate drin. Das stammt Alles aus der Zeit vor Grafana. Da hatte ich einzelne Balken in VIS.

                                    L 1 Antwort Letzte Antwort
                                    0
                                    • L Laser

                                      @wolfi913 ich miste erst mal aus. Habe auch noch die einzelnen Monate drin. Das stammt Alles aus der Zeit vor Grafana. Da hatte ich einzelne Balken in VIS.

                                      L Offline
                                      L Offline
                                      Laser
                                      schrieb am zuletzt editiert von Laser
                                      #47

                                      @wolfi913
                                      1Wert ist ja in jedem currentDay drin. 1 Tag sollte angezeigt werden. Habe Das mal so gemacht (ist aber noch ein Fehler drin):

                                      import "timezone"
                                      import "date"
                                      option location = timezone.location(name: "Europe/Berlin")
                                      
                                      from(bucket: "iobroker")
                                       // |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                        |> range(start: date.add(d: -7d, to: today()), stop: date.truncate(t: today(), unit: 1d))
                                        |> filter(fn: (r)
                                        => r["_measurement"] == "sourceanalytix.0.alias__0__VE-Total__H19.currentYear.delivered.01_currentDay"
                                        or r["_measurement"] == "sourceanalytix.0.alias__0__Shelly1EM-Power__Total-EM1.currentYear.delivered.01_currentDay")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        |> aggregateWindow(every: 1d, fn: last, createEmpty: true, timeSrc: "_start")
                                        |> yield(name: "last")
                                      
                                      W 1 Antwort Letzte Antwort
                                      0
                                      • L Laser

                                        @wolfi913
                                        1Wert ist ja in jedem currentDay drin. 1 Tag sollte angezeigt werden. Habe Das mal so gemacht (ist aber noch ein Fehler drin):

                                        import "timezone"
                                        import "date"
                                        option location = timezone.location(name: "Europe/Berlin")
                                        
                                        from(bucket: "iobroker")
                                         // |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                          |> range(start: date.add(d: -7d, to: today()), stop: date.truncate(t: today(), unit: 1d))
                                          |> filter(fn: (r)
                                          => r["_measurement"] == "sourceanalytix.0.alias__0__VE-Total__H19.currentYear.delivered.01_currentDay"
                                          or r["_measurement"] == "sourceanalytix.0.alias__0__Shelly1EM-Power__Total-EM1.currentYear.delivered.01_currentDay")
                                          |> filter(fn: (r) => r["_field"] == "value")
                                          |> aggregateWindow(every: 1d, fn: last, createEmpty: true, timeSrc: "_start")
                                          |> yield(name: "last")
                                        
                                        W Online
                                        W Online
                                        wolfi913
                                        schrieb am zuletzt editiert von
                                        #48

                                        @laser
                                        Stell mal die Range auf

                                          |> range(start: -7d, stop: v.timeRangeStop)
                                        

                                        Den aktuellen Tag zeigt er Dir ja mit der anderen Auswertung nicht an. Da werden nur ganze Tage genommen.
                                        Außerdem würde ich je eine Query je Datenpunkt machen.

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • W wolfi913

                                          @laser
                                          Stell mal die Range auf

                                            |> range(start: -7d, stop: v.timeRangeStop)
                                          

                                          Den aktuellen Tag zeigt er Dir ja mit der anderen Auswertung nicht an. Da werden nur ganze Tage genommen.
                                          Außerdem würde ich je eine Query je Datenpunkt machen.

                                          L Offline
                                          L Offline
                                          Laser
                                          schrieb am zuletzt editiert von Laser
                                          #49

                                          @wolfi913 sagte in Stapel-Balkengrafik mit Grafana:

                                          e

                                          Da paßt noch was mit den Zeiten nicht. Kann nicht gestapelt werden. Ich versuche noch mal mit einzelnen Query.
                                          (Darstellung mit dem Zeitversatz besteht aber noch)
                                          d342e9f6-593c-4796-941e-4f75ad3a7217-image.png

                                          Das Ganze muß ich erst mal verarbeiten. Ich werde morgen noch mal frisch ran gehen.
                                          Ist diese Beschreibung richtig? https://docs.influxdata.com/flux/v0/stdlib/universe/range/ u.a.m.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          673

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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