Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. neue Visualisierung "webui" (alternative zu vis & vis-2)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    neue Visualisierung "webui" (alternative zu vis & vis-2)

    This topic has been deleted. Only users with topic management privileges can see it.
    • Smilie108
      Smilie108 last edited by

      @Blockmove @jogibear9988
      Hi Ihr
      würde gerne verstehen wie ihr immer auf die formumla kommt für die auftrennung der daten
      bin grad dabei das apg-info einzubinden.
      Allerdings ist dort das arry anders aufgebiut wie bei der pv-forcast

      {
        "graphs": [
          {
            "type": "line",
            "color": "gray",
            "line_steppedLine": true,
            "xAxis_timeFormats": {
              "hour": "HH"
            },
            "xAxis_time_unit": "hour",
            "yAxis_min": 0,
            "yAxis_max": 10,
            "datalabel_show": "auto",
            "datalabel_minDigits": 2,
            "datalabel_maxDigits": 2,
            "xAxis_bounds": "data",
            "line_pointSize": 5,
            "line_PointColor": "rgba(0, 0, 0, 0)",
            "datalabel_fontSize": 10,
            "datalabel_color": "black",
            "line_UseFillColor": true,
            "data": [
              {
                "y": 6.867,
                "t": 1705791600000
              },
              {
                "y": 5.783,
                "t": 1705795200000
              },
              {
                "y": 5.515,
                "t": 1705798800000
              },
              {
                "y": 5.089,
                "t": 1705802400000
              },
              {
                "y": 5.137,
                "t": 1705806000000
              },
              {
                "y": 5.501,
                "t": 1705809600000
              },
              {
                "y": 5.429,
                "t": 1705813200000
              },
              {
                "y": 6.005,
                "t": 1705816800000
              },
              {
                "y": 6.312,
                "t": 1705820400000
              },
              {
                "y": 5.876,
                "t": 1705824000000
              },
              {
                "y": 5.464,
                "t": 1705827600000
              },
              {
                "y": 5.307,
                "t": 1705831200000
              },
              {
                "y": 4.695,
                "t": 1705834800000
              },
              {
                "y": 4.66,
                "t": 1705838400000
              },
              {
                "y": 5.435,
                "t": 1705842000000
              },
              {
                "y": 6.474,
                "t": 1705845600000
              },
              {
                "y": 7.868,
                "t": 1705849200000
              },
              {
                "y": 8.198,
                "t": 1705852800000
              },
              {
                "y": 8.6,
                "t": 1705856400000
              },
              {
                "y": 8.216,
                "t": 1705860000000
              },
              {
                "y": 7.867,
                "t": 1705863600000
              },
              {
                "y": 6.409,
                "t": 1705867200000
              },
              {
                "y": 6.384,
                "t": 1705870800000
              },
              {
                "y": 5.868,
                "t": 1705874400000
              },
              {
                "y": 5.868,
                "t": 1705878000000
              }
            ]
          }
        ]
      }
      

      würde gerne mal verstehen wie ihr immer draufkommt wie man das aufsplittet und zuweist.
      Das eine bei pv-forcast verstehe ich noch da sucht er immer die 2 zusammenpasssenden arrays anhand der index nummer. Aber wie kann ich das hier wieder aufspliten und dann zuweisen da alles immer in einem array ist und noch dazu als timestamp ?

      Danke im voraus für eure geduld mit mit mir 😉

      B jogibear9988 2 Replies Last reply Reply Quote 0
      • B
        Blockmove @Smilie108 last edited by Blockmove

        @smilie108

        Ich mach das einfach immer in einem Script in ioBroker.
        Da spiel ich halt solange mit json.parse bis es passt. Immer schön der Struktur entlanghangeln und in einzelne Variablen zerlegen.
        Am Schluß kann dann das dann in ein Statement zusammenpacken.

        Das "t" sieht doch schon wie ein normaler Timestamp aus.

        1 Reply Last reply Reply Quote 0
        • B
          Blockmove last edited by

          Hallo Jochen,
          ich hab gerade angefangen das Thema Bindings im Wiki zu beschreiben.
          Als simples Beispiel wollte ich einfach eine Zahl addieren:

          BindingAdd.png

          Funktioniert aber nicht. Die 3 wird als Zeichen bzw. String genommen und angehängt.
          Subtraktion, Multiplikation, Division funktionieren wie erwartet.

          webui Version 1.0.22

          VG
          Dieter

          jogibear9988 1 Reply Last reply Reply Quote 0
          • jogibear9988
            jogibear9988 @Blockmove last edited by

            @blockmove said in neue Visualisierung "webui" (alternative zu vis):

            Hallo Jochen,
            ich hab gerade angefangen das Thema Bindings im Wiki zu beschreiben.
            Als simples Beispiel wollte ich einfach eine Zahl addieren:

            BindingAdd.png

            Funktioniert aber nicht. Die 3 wird als Zeichen bzw. String genommen und angehängt.
            Subtraktion, Multiplikation, Division funktionieren wie erwartet.

            webui Version 1.0.22

            VG
            Dieter

            geht bei mir genau so wie du es hier zeigst

            B 1 Reply Last reply Reply Quote 0
            • jogibear9988
              jogibear9988 @Smilie108 last edited by

              @smilie108

              paste dein json hier:
              https://jsonparser.org/

              86956a81-5c8f-4b46-80b4-ba4c9839ffec-image.png

              nun siehst auf deinen ersten node in data greifst du über

               graphs[0].data[0].y zu
              

              dies könntest nun in einer schleife machen:

                let result = [];
                for (let d of graphs[0].data) {
                      result.push([d.y, d.ts])
               return result;
              

              geht aber natürlich auch so:

                graphs[0].data.map(d => ([d.y, d.ts]))
              Smilie108 1 Reply Last reply Reply Quote 0
              • B
                Blockmove @jogibear9988 last edited by

                @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                Hallo Jochen,
                ich hab gerade angefangen das Thema Bindings im Wiki zu beschreiben.
                Als simples Beispiel wollte ich einfach eine Zahl addieren:

                BindingAdd.png

                Funktioniert aber nicht. Die 3 wird als Zeichen bzw. String genommen und angehängt.
                Subtraktion, Multiplikation, Division funktionieren wie erwartet.

                webui Version 1.0.22

                VG
                Dieter

                geht bei mir genau so wie du es hier zeigst

                Bin nun dahintergekommen 😁

                Ich hab zum Testen mehrere Input-Felder für den gleichen Datenpunkt auf einem Screen

                BindingAddInput.png

                Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                jogibear9988 1 Reply Last reply Reply Quote 0
                • Smilie108
                  Smilie108 @jogibear9988 last edited by Smilie108

                  @jogibear9988 sagte in neue Visualisierung "webui" (alternative zu vis):

                  graphs[0].data.map(d => ([d.y, d.ts]))

                  danke mal grundsätzlich das glaub ich habe ich jetzt verstanden aber er akzeptiert die 0 nicht
                  4732e2ea-fe64-4b12-b648-06171b4efd47-grafik.png
                  9b2c06e1-5fc0-4ded-b075-e4bd173b26e6-grafik.png

                  // Update
                  Habs zusaammengebracht muss nun nur noch den ts in eine leesbare form bringen 😉
                  Danke vorab mal glaub das hab ich ejtzt verstanden und @Blockmove jop im scripteditor ist das ganz praktisch mit den fehlermeldungen 😉

                  1 Reply Last reply Reply Quote 0
                  • jogibear9988
                    jogibear9988 @Blockmove last edited by

                    @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                    @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                    @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                    Hallo Jochen,
                    ich hab gerade angefangen das Thema Bindings im Wiki zu beschreiben.
                    Als simples Beispiel wollte ich einfach eine Zahl addieren:

                    BindingAdd.png

                    Funktioniert aber nicht. Die 3 wird als Zeichen bzw. String genommen und angehängt.
                    Subtraktion, Multiplikation, Division funktionieren wie erwartet.

                    webui Version 1.0.22

                    VG
                    Dieter

                    geht bei mir genau so wie du es hier zeigst

                    Bin nun dahintergekommen 😁

                    Ich hab zum Testen mehrere Input-Felder für den gleichen Datenpunkt auf einem Screen

                    BindingAddInput.png

                    Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                    versteh ich nicht, wieso macht es mit mehreren probleme?
                    Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      Blockmove @jogibear9988 last edited by

                      @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                      Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                      versteh ich nicht, wieso macht es mit mehreren probleme?
                      Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                      Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                      jogibear9988 1 Reply Last reply Reply Quote 0
                      • jogibear9988
                        jogibear9988 @Blockmove last edited by

                        @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                        @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                        Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                        versteh ich nicht, wieso macht es mit mehreren probleme?
                        Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                        Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                        kannst mir das in einen screen auf dem beisielserver packen? dann schau ich

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          Blockmove @jogibear9988 last edited by Blockmove

                          @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                          @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                          @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                          Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                          versteh ich nicht, wieso macht es mit mehreren probleme?
                          Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                          Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                          kannst mir das in einen screen auf dem beisielserver packen? dann schau ich

                          Ich hab's mal versucht bei dir nachzustellen. Aber auf dem Testserver funktioniert.
                          Du hast aber noch 1.0.21 drauf. Ich hab auf meinen 2 Rechnern 1.0.22.

                          Ergänzung: Hab jetzt auf einen Rechner zurück auf 1.0.21.
                          Damit lässt sich das Verhalten nicht mehr nachstellen. Also wie auf deinem Testserver.

                          jogibear9988 1 Reply Last reply Reply Quote 0
                          • jogibear9988
                            jogibear9988 @Blockmove last edited by

                            @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                            @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                            @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                            @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                            Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                            versteh ich nicht, wieso macht es mit mehreren probleme?
                            Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                            Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                            kannst mir das in einen screen auf dem beisielserver packen? dann schau ich

                            Ich hab's mal versucht bei dir nachzustellen. Aber auf dem Testserver funktioniert.
                            Du hast aber noch 1.0.21 drauf. Ich hab auf meinen 2 Rechnern 1.0.22.

                            Ergänzung: Hab jetzt auf einen Rechner zurück auf 1.0.21.
                            Damit lässt sich das Verhalten nicht mehr nachstellen. Also wie auf deinem Testserver.

                            hab geupdatet, wie heißt der screen?

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              Blockmove @jogibear9988 last edited by

                              @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                              @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                              @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                              @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                              @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                              Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                              versteh ich nicht, wieso macht es mit mehreren probleme?
                              Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                              Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                              kannst mir das in einen screen auf dem beisielserver packen? dann schau ich

                              Ich hab's mal versucht bei dir nachzustellen. Aber auf dem Testserver funktioniert.
                              Du hast aber noch 1.0.21 drauf. Ich hab auf meinen 2 Rechnern 1.0.22.

                              Ergänzung: Hab jetzt auf einen Rechner zurück auf 1.0.21.
                              Damit lässt sich das Verhalten nicht mehr nachstellen. Also wie auf deinem Testserver.

                              hab geupdatet, wie heißt der screen?
                              /blockmove/inputbinding

                              jogibear9988 1 Reply Last reply Reply Quote 0
                              • jogibear9988
                                jogibear9988 @Blockmove last edited by

                                @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                                @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                                @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                                @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                                @blockmove said in neue Visualisierung "webui" (alternative zu vis):

                                @jogibear9988 said in neue Visualisierung "webui" (alternative zu vis):

                                Damit trit das Problem auf. Mit einem einzelnen Input für den DP funktioniert alles wie gewohnt.

                                versteh ich nicht, wieso macht es mit mehreren probleme?
                                Habs gerade versucht, dachte er ruft dann das changed durch die wertänderung auf, aber scheint das wird nur durch die UI getriggert, daher sollte es ja gehen

                                Und warum nur bei einem "+". Andere Rechenoperationen funktionieren.

                                kannst mir das in einen screen auf dem beisielserver packen? dann schau ich

                                Ich hab's mal versucht bei dir nachzustellen. Aber auf dem Testserver funktioniert.
                                Du hast aber noch 1.0.21 drauf. Ich hab auf meinen 2 Rechnern 1.0.22.

                                Ergänzung: Hab jetzt auf einen Rechner zurück auf 1.0.21.
                                Damit lässt sich das Verhalten nicht mehr nachstellen. Also wie auf deinem Testserver.

                                hab geupdatet, wie heißt der screen?
                                /blockmove/inputbinding

                                okay, hab nen typo, baue gerade neues release

                                B 1 Reply Last reply Reply Quote 2
                                • Smilie108
                                  Smilie108 last edited by Smilie108

                                  Mhm
                                  hab das ja jetzt laufen mit

                                  let obj = JSON.parse(__0);
                                  let graph = obj.graphs[0];
                                  let result = [];
                                   for (let d of obj.graphs[0].data) {
                                         result.push([d.y, d.t])}
                                  return result;
                                  

                                  wenn ich allerdings

                                   result.push([d.y, formatDate(d.t , "DD MMM YYYY hh:mm")])}
                                  

                                  mache dann bekomme ich wieder keiune anzeige beim javasript beokmme ich folgende RM

                                  avascript.0 (1205) script.js.test.testscript_graph: [ [ 6.867, '21-01-2024 00:00' ], [ 5.783, '21-01-2024 01:00' ], [ 5.515, '21-01-2024 02:00' ], [ 5.089, '21-01-2024 03:00' ], [ 5.137, '21-01-2024 04:00' ], [ 5.501, '21-01-2024 05:00' ], [ 5.429, '21-01-2024 06:00' ], [ 6.005, '21-01-2024 07:00' ], [ 6.312, '21-01-2024 08:00' ], [ 5.876, '21-01-2024 09:00' ], [ 5.464, '21-01-2024 10:00' ], [ 5.307, '21-01-2024 11:00' ], [ 4.695, '21-01-2024 12:00' ], [ 4.66, '21-01-2024 13:00' ], [ 5.435, '21-01-2024 14:00' ], [ 6.474, '21-01-2024 15:00' ], [ 7.868, '21-01-2024 16:00' ], [ 8.198, '21-01-2024 17:00' ], [ 8.6, '21-01-2024 18:00' ], [ 8.216, '21-01-2024 19:00' ], [ 7.867, '21-01-2024 20:00' ], [ 6.409, '21-01-2024 21:00' ], [ 6.384, '21-01-2024 22:00' ], [ 5.868, '21-01-2024 23:00' ], [ 5.868, '22-01-2024 00:00' ] ]
                                  

                                  kann es sein das das js chart die ' nicht mag ?
                                  die bekomme ich aber nicht weg
                                  und toLocaleString() geht ja nicht

                                  jogibear9988 1 Reply Last reply Reply Quote 0
                                  • jogibear9988
                                    jogibear9988 @Smilie108 last edited by

                                    @smilie108 said in neue Visualisierung "webui" (alternative zu vis):

                                    Mhm
                                    hab das ja jetzt laufen mit

                                    let obj = JSON.parse(__0);
                                    let graph = obj.graphs[0];
                                    let result = [];
                                     for (let d of obj.graphs[0].data) {
                                           result.push([d.y, d.t])}
                                    return result;
                                    

                                    wenn ich allerdings

                                     result.push([d.y, formatDate(d.t , "DD MMM YYYY hh:mm")])}
                                    

                                    mache dann bekomme ich wieder keiune anzeige beim javasript beokmme ich folgende RM

                                    avascript.0 (1205) script.js.test.testscript_graph: [ [ 6.867, '21-01-2024 00:00' ], [ 5.783, '21-01-2024 01:00' ], [ 5.515, '21-01-2024 02:00' ], [ 5.089, '21-01-2024 03:00' ], [ 5.137, '21-01-2024 04:00' ], [ 5.501, '21-01-2024 05:00' ], [ 5.429, '21-01-2024 06:00' ], [ 6.005, '21-01-2024 07:00' ], [ 6.312, '21-01-2024 08:00' ], [ 5.876, '21-01-2024 09:00' ], [ 5.464, '21-01-2024 10:00' ], [ 5.307, '21-01-2024 11:00' ], [ 4.695, '21-01-2024 12:00' ], [ 4.66, '21-01-2024 13:00' ], [ 5.435, '21-01-2024 14:00' ], [ 6.474, '21-01-2024 15:00' ], [ 7.868, '21-01-2024 16:00' ], [ 8.198, '21-01-2024 17:00' ], [ 8.6, '21-01-2024 18:00' ], [ 8.216, '21-01-2024 19:00' ], [ 7.867, '21-01-2024 20:00' ], [ 6.409, '21-01-2024 21:00' ], [ 6.384, '21-01-2024 22:00' ], [ 5.868, '21-01-2024 23:00' ], [ 5.868, '22-01-2024 00:00' ] ]
                                    

                                    kann es sein das das js chart die ' nicht mag ?
                                    die bekomme ich aber nicht weg
                                    und toLocaleString() geht ja nicht

                                    die ' bedeuten in deiner ausgabe ja nur es sind strings... das waren aber vorher zahlen.
                                    vlt. machst im frontend was falsch.
                                    schreib in die formula "debugger;" rein dann kannst die auch durchsteppen

                                    1 Reply Last reply Reply Quote 0
                                    • jogibear9988
                                      jogibear9988 last edited by

                                      äh, formatDate gibts im frontend nicht, das ist eine funktion vom javascript adapter

                                      Smilie108 1 Reply Last reply Reply Quote 0
                                      • Smilie108
                                        Smilie108 @jogibear9988 last edited by Smilie108

                                        @jogibear9988
                                        ah ok das würde bedeuten ich muss das im javascript aufbereiten in ein objekt schreiben und das dann binden ? probier ich gleich mal dann kannman den timestamp nicht on the fly umwandeln ?

                                        B 1 Reply Last reply Reply Quote 0
                                        • B
                                          Blockmove @Smilie108 last edited by

                                          @smilie108 said in neue Visualisierung "webui" (alternative zu vis):

                                          @jogibear9988
                                          ah ok das würde bedeuten ich muss das im javascript aufbereiten in ein objekt schreiben und das dann binden ? probier ich gleich mal dann kannman den timestamp nicht on the fly umwandeln ?

                                          Zeit und Datumsfunktion gibt es in Javascript jede Menge.
                                          Mit welchem Control willst du die Daten darstellen? In welcher Form erwartet es Zeit und Datum?
                                          Als ts ist es einfach ne Zahl, Da kannst du dann evtl. die Zeitzonen-Funktionen brauchen und z.B. einfach den Offset zur UTC draufaddieren.

                                          Smilie108 1 Reply Last reply Reply Quote 0
                                          • Smilie108
                                            Smilie108 @Blockmove last edited by

                                            @blockmove eigentlich dachte ich an das chart-js und in der zeitleiste eigentlich 21-01-2024 00:00 usw.
                                            muss mich damit aber auch noch außeinandersezten da ich die color von den axen nicht geändert bekomme bzw auch würde ich gerne einheiten anfügen. 😉 mal sehen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            617
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            21
                                            1076
                                            287729
                                            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