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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

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

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

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

      @smilie108
      04f55bbf-f01a-47ba-9ec6-086198e4fa62-grafik.png
      7c90d496-dfcc-4716-84b5-a9e143dedd68-grafik.png
      f96c268a-3c51-4ff7-9d6b-59d93695a5c1-grafik.png
      min bei variabel ( objekt auf 20 max auf 65 und trotzdem kann ich 70 schreiben

      https://www.w3schools.com/tags/att_input_min.asp

      Note: The max and min attributes works with the following input types: number, range, date, datetime-local, month, time and week.

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

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

        ja, das passt ja auch.
        wenn du eine zahl parsen willst, darf diese in javascript nicht mit einem text anfangen.
        Wenn du das vorher wegschneiden willst, musst halt auch bei "formula write back" was angeben.

        Bei der Version 1.0.18 hat aber genau das noch funktioniert. Auch bei nem twoway-Binding konnte vor der Variable noch ein Text stehen.

        'Solltemp.:' + __0 
        

        Das funktioniert nun nicht mehr.
        Ok, muss es auch nicht mehr unbedingt.
        Es gibt halt Unterschiede zwischen einem oneway- und twoway-Binding.

        1 Reply Last reply Reply Quote 0
        • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            889
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            20
                                            1074
                                            247699
                                            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