Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Grafana
  5. Stapel-Balkengrafik mit Grafana

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Stapel-Balkengrafik mit Grafana

Scheduled Pinned Locked Moved Grafana
76 Posts 7 Posters 8.6k Views 6 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Laser

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

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

    L Offline
    L Offline
    Laser
    wrote on last edited by
    #8

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

    1 Reply Last reply
    0
    • L 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"})
      
      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      wrote on last edited by
      #9

      @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.

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      L 1 Reply Last reply
      1
      • CodierknechtC Codierknecht

        @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 Offline
        L Offline
        Laser
        wrote on last edited by Laser
        #10

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

        CodierknechtC mickemupM 2 Replies Last reply
        0
        • L Laser

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

          CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          wrote on last edited by
          #11

          @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 ;-)

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          1 Reply Last reply
          0
          • L Laser

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

            mickemupM Online
            mickemupM Online
            mickemup
            wrote on last edited by
            #12

            @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
            0
            • mickemupM mickemup

              @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 Offline
              L Offline
              Laser
              wrote on last edited by Laser
              #13

              @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?)

              mickemupM 2 Replies Last reply
              0
              • L 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?)

                mickemupM Online
                mickemupM Online
                mickemup
                wrote on last edited by
                #14

                @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
                0
                • mickemupM mickemup

                  @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 Offline
                  L Offline
                  Laser
                  wrote on last edited by Laser
                  #15

                  @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.

                  mickemupM 1 Reply Last reply
                  0
                  • L 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.

                    mickemupM Online
                    mickemupM Online
                    mickemup
                    wrote on last edited by mickemup
                    #16

                    @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
                    0
                    • mickemupM 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 Offline
                      L Offline
                      Laser
                      wrote on last edited by
                      #17

                      @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...

                      mickemupM 1 Reply Last reply
                      0
                      • L 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?)

                        mickemupM Online
                        mickemupM Online
                        mickemup
                        wrote on last edited by
                        #18

                        @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
                        0
                        • mickemupM mickemup

                          @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 Offline
                          L Offline
                          Laser
                          wrote on last edited by
                          #19

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

                          mickemupM 1 Reply Last reply
                          0
                          • L Laser

                            @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...

                            mickemupM Online
                            mickemupM Online
                            mickemup
                            wrote on last edited by
                            #20

                            @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
                            0
                            • L Laser

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

                              mickemupM Online
                              mickemupM Online
                              mickemup
                              wrote on last edited by
                              #21

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

                              L 1 Reply Last reply
                              0
                              • mickemupM mickemup

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

                                L Offline
                                L Offline
                                Laser
                                wrote on last edited by Laser
                                #22

                                @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.

                                icebearI mickemupM 2 Replies Last reply
                                0
                                • L 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.

                                  icebearI Offline
                                  icebearI Offline
                                  icebear
                                  wrote on last edited by icebear
                                  #23

                                  @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
                                  0
                                  • L 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.

                                    mickemupM Online
                                    mickemupM Online
                                    mickemup
                                    wrote on last edited by
                                    #24

                                    @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
                                    0
                                    • icebearI 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 Offline
                                      L Offline
                                      Laser
                                      wrote on last edited by Laser
                                      #25

                                      @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

                                      mickemupM 1 Reply Last reply
                                      0
                                      • L 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

                                        mickemupM Online
                                        mickemupM Online
                                        mickemup
                                        wrote on last edited by mickemup
                                        #26

                                        @laser
                                        Zeig da mal RawData
                                        Oder anstatt Graph die Table einfach zum sehen, wann der DP zum letzten mal geloggt wurde...

                                        L 1 Reply Last reply
                                        0
                                        • mickemupM mickemup

                                          @laser
                                          Zeig da mal RawData
                                          Oder anstatt Graph die Table einfach zum sehen, wann der DP zum letzten mal geloggt wurde...

                                          L Offline
                                          L Offline
                                          Laser
                                          wrote on last edited by Laser
                                          #27

                                          @mickemup
                                          fa1e4cba-c35c-4ad2-b171-3c545a177d71-image.png
                                          Die Werte ändern sich kaum von 2 bis 74

                                          mickemupM 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          706

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe