Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Grafana
    5. Stapel-Balkengrafik mit Grafana

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Stapel-Balkengrafik mit Grafana

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Laser @Codierknecht last edited by Laser

      @codierknecht ``` Hier versuche ich den Balken für "Montag" darzustellen. Ohne:

       |> keep(columns: ["_value"])
        |> rename(columns: {_value:"Mo"})
      

      Mit: |> yield(name: "last") Wird etwas angezeigt. Balken nebeneinander zu aufsteigenden Zeiten.

      from(bucket: "iobroker")
        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
        |> filter(fn: (r) => r["_measurement"] == "sourceanalytix.0.alias__0__OpenDTU-Power__yieldtotalBKW.currentYear.delivered.currentWeek.01_Monday")
        |> filter(fn: (r) => r["_field"] == "value")
        |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
        |> yield(name: "last")
      // |> keep(columns: ["_value"])
      // |> rename(columns: {_value:"Mo"})
      
      L Codierknecht 2 Replies Last reply Reply Quote 0
      • L
        Laser @Laser last edited by Laser

        @Codierknecht 11e4c6ef-3789-42eb-b777-108f4d357400-image.png

        wo plötzlich der dritte Balken herkommt, weiß ich nicht.

        L 1 Reply Last reply Reply Quote 0
        • L
          Laser @Laser last edited by

          @laser 9ce23dbb-9bff-40e1-8393-22f8b5a544b5-image.png

          1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @Laser last edited by

            @laser
            Du willst 2 Werte stapeln?
            Dann müssen die auch den gleichen Zeitstempel haben. Ist das nicht gegeben, muss man den Salat "normieren". also z.B. die Millisekunden oder Sekunden abschneiden.
            Aber bei Influx bin ich leider raus. Ich bleibe berufsbedingt bei SQL.

            Warte mal ab - da kennen sich andere besser mit aus.

            L 1 Reply Last reply Reply Quote 1
            • L
              Laser @Codierknecht last edited by Laser

              So sieht es jetzt aus. Ein Schritt auf dem richtigen Weg?
              cfbf5bf8-1c6c-4df1-a96d-b5a0ee7c84ee-image.png

              Codierknecht mickemup 2 Replies Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @Laser last edited by

                @laser sagte in Stapel-Balkengrafik mit Grafana:

                Ein Schritt auf dem richtigen Weg?

                Würde ich doch sagen.

                Wie gesagt: Influx ist so gar nicht meins 😉

                1 Reply Last reply Reply Quote 0
                • mickemup
                  mickemup @Laser last edited by

                  @laser
                  Mit der aggregatewindow funktion bist du auf dem richtigen Weg.
                  Ob es so ist wie du es haben willst, musst du selbst beurteilen.
                  Und sonst nachfragen und präzise sagen was du willst 🙂
                  In den Overrides kannst du noch die Namen anpassen, damit nicht die DP Bezeichnung, sondern was sinvolleres steht.

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    Laser @mickemup last edited by Laser

                    @mickemup ich habe in der Influx DB Zählerwerte für verschiedene Solarproduktionszahlen. (Gesamtproduktion, Akku-Ladeproduktion). Für jeden Wochentag und jede Meßgröße einen Wert. Diese beiden Werte eines Wochentages möchte ich in einem Balken gestapelt darstellen. Und insgesamt 7 Balken von Montag bis Sonntag.
                    Ich bekomme das aber nur gestapelt für alle Werte hin, nicht unterteilt für die Wochentage.
                    Ganz blöde Frage: Ist das nun eine Influx Funktion - vermute ich mal- oder Bestandteil von Grafana (wo muß ich suchen?)

                    mickemup 2 Replies Last reply Reply Quote 0
                    • mickemup
                      mickemup @Laser last edited by

                      @laser 0a2c4bc5-3fe7-4266-8209-eb10a3a656d9-image.png

                      So habe ich mein Jahresproduktion/Verbrauch dargestellt.

                      Sind das pro Tag unterschiedliche Datenpunkte?
                      Und wie werden die Tage auch nur am dem entsprechenden Tag aktualisiert und in die DB geschrieben.
                      Wenn ja musst du für jeden ein Query machen.
                      Und diesen Dann Eventuell mit einem Timeshift verschieben.

                      Aber das kriegt man schon hin.
                      Mach doch mal Mo und Di und dann schauen wir weiter 🙂

                      L 1 Reply Last reply Reply Quote 0
                      • L
                        Laser @mickemup last edited by Laser

                        @mickemup pro Tag und pro Meßwert sind das unterschiedliche Datenpunkte. Werden in IO Broker mit "Sourceanalytics" generiert.
                        Zur Zeit sieht das so aus: (Testweise 2 Werte 1 Tag und 1 Wert für den nächsten Tag, mit 2 Query's hatte ich es auch probiert)
                        54146ab8-f754-41b7-881f-b78dfcf4d9be-image.png

                        Hier mal das 1. & 2. Query mit 2 Werten

                        32f21605-afd7-423f-89bc-455e163e2716-image.png

                        mir fehlt der Zeitversatz für die "Dienstag" Werte.

                        mickemup 1 Reply Last reply Reply Quote 0
                        • mickemup
                          mickemup @Laser last edited by mickemup

                          @laser Sourceanalytics kenne ich nicht, aber wenn die Werte dort nur am entsprechenden Tag geloggt werden:
                          Dann versuch mal mit nur every 1d im Window und ohne offset.

                          Montag ist ja im Moment am 31. und Dienstag am 30. 😉

                          Und einfacher wäre natürlich ein DP der immer am Ende vom Tag den Wert drinhat, aber das sollte auch so irgendwie klappen...

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            Laser @mickemup last edited by

                            @mickemup Ist nur 1 Wert pro Wochen- Tag.
                            "Dann versuch mal mit nur every 1d im Window und ohne offset." >> In "AgregateWindow" oder in der Tageauswahl?
                            Habe Beides ohne Erfolg probiert...

                            mickemup 1 Reply Last reply Reply Quote 0
                            • mickemup
                              mickemup @Laser last edited by

                              @laser

                              Ganz blöde Frage: Ist das nun eine Influx Funktion - vermute ich mal- oder Bestandteil von Grafana (wo muß ich suchen?)

                              Die Darstellung zB das stapeln ist eine "Grafana-Funktion"
                              Die Daten kommen aber via Query von Influxd und müssen für Grafana dementsprechend aufgearbeitet (zB via AgregateWindow zeitgleich gesetzt werden) damit Grafana diese auch wie gewünscht darstellen kann.

                              L 1 Reply Last reply Reply Quote 0
                              • L
                                Laser @mickemup last edited by

                                @mickemup Deine Bildschirmdarstellung ist ja scheinbar das, was ich brauche. Hast Du mal die Darstellung der Werteaufbereitung?

                                mickemup 1 Reply Last reply Reply Quote 0
                                • mickemup
                                  mickemup @Laser last edited by

                                  @laser
                                  Wie sieht es den aus, wenn du im "Montags-Query" das drin hast:

                                  |> aggregateWindow(every: 1d, fn: last, createEmpty: false, timeSrc: "_start")
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • mickemup
                                    mickemup @Laser last edited by

                                    @laser nützt dir nichts, da ich alles im selben DP logge...

                                    L 1 Reply Last reply Reply Quote 0
                                    • L
                                      Laser @mickemup last edited by Laser

                                      @mickemup OK.
                                      87db997f-f8b3-4f7d-9dd5-3be493ae2d84-image.png

                                      d0a115e1-9b67-4adf-a5ab-1c9ee2eb7e5d-image.png
                                      Am 3.2. und 4.2. werden gleiche Werte angezeigt (sind aber nicht gleich) Egal, wie ich in der Grafana Übersicht oben den Zeitbereich einstelle. Sind es mal mehr oder weniger Säulen.

                                      icebear mickemup 2 Replies Last reply Reply Quote 0
                                      • icebear
                                        icebear @Laser last edited by icebear

                                        @laser

                                        Dein Problem ist die |> range die du angibst.

                                        Was willst du den genau anzeigen? Die letzte Woche, den letzten Monat oder nur ein Tag?

                                        Wenn du z.B die letzte Woche und dann jeden Tag haben willst dann nimmst du oben bei |> range

                                        |> range(start: -7d)
                                        .
                                        .
                                        .
                                        |> aggregateWindow(every: 1d, fn: last, createEmpty: false)

                                        Erklär erstmal was du genau haben möchtest.

                                        so etwas hier:

                                        barchart.png

                                        L 1 Reply Last reply Reply Quote 0
                                        • mickemup
                                          mickemup @Laser last edited by

                                          @laser
                                          Das mit dem Zeitbereich sagt einfach wie weit "zurück du die Daten holst:

                                          Kannst du mal das am Anfang vom Query reinsetzen?

                                          import "date"
                                          import "timezone"
                                          option location = timezone.location(name: "Europe/Madrid")
                                          

                                          Und dann mal Table view Anzeigen?
                                          Ich weiss halt nicht wie und wie oft "Sourcanalytics" den DP befüllt...

                                          1 Reply Last reply Reply Quote 0
                                          • L
                                            Laser @icebear last edited by Laser

                                            @icebear ich habe jetzt das:
                                            4741291a-0d1a-4e9c-97b3-9ddf0a257be2-image.png

                                            ich möchte aber 2 Diagramme zusammenführen und die Werte in einem gestapelten Diagramm darstellen.

                                            in der Influx-DB sieht ein Wert so aus:
                                            47e89036-f579-4c8f-a23c-24473a68752d-image.png

                                            mickemup 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            76
                                            3373
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo