Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Frage: JSON Inhalt als BarWidget Visualisieren

    NEWS

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    Frage: JSON Inhalt als BarWidget Visualisieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Maas-Meister last edited by

      Moin,
      ich bekomme von dem Tibber Adapter ein JSON-DP mit meinen Energiedaten.
      Einen Teil dieser Werte würde ich gerne mit einem Bar Widget Visualisieren.
      Mit dem E-Charts Adapter hatte ich bisher keinen Erfolg.
      Außerdem müsste noch die Uhrzeit konvertiert werden?

      Kann mir jemand aufzeigen wie das geht?

      Beispiel DP:

      [{"from":"2023-03-01T00:00:00.000+01:00","to":"2023-04-01T00:00:00.000+02:00","cost":137.372376561,"unitPrice":0.25357,"unitPriceVAT":0.040486,"consumption":541.754,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-04-01T00:00:00.000+02:00","to":"2023-05-01T00:00:00.000+02:00","cost":90.7700860794,"unitPrice":0.243949,"unitPriceVAT":0.03895,"consumption":372.087,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-05-01T00:00:00.000+02:00","to":"2023-06-01T00:00:00.000+02:00","cost":45.3044254425,"unitPrice":0.219539,"unitPriceVAT":0.035052,"consumption":206.362,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-06-01T00:00:00.000+02:00","to":"2023-07-01T00:00:00.000+02:00","cost":41.3673965509,"unitPrice":0.234526,"unitPriceVAT":0.037445,"consumption":176.387,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-07-01T00:00:00.000+02:00","to":"2023-08-01T00:00:00.000+02:00","cost":44.7069721861,"unitPrice":0.225864,"unitPriceVAT":0.036062,"consumption":197.938,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-08-01T00:00:00.000+02:00","to":"2023-09-01T00:00:00.000+02:00","cost":58.4057955355,"unitPrice":0.247937,"unitPriceVAT":0.039587,"consumption":235.567,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-09-01T00:00:00.000+02:00","to":"2023-10-01T00:00:00.000+02:00","cost":62.7189878063,"unitPrice":0.257247,"unitPriceVAT":0.041073,"consumption":243.808,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-10-01T00:00:00.000+02:00","to":"2023-11-01T00:00:00.000+01:00","cost":113.0440595319,"unitPrice":0.243011,"unitPriceVAT":0.0388,"consumption":465.18,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-11-01T00:00:00.000+01:00","to":"2023-12-01T00:00:00.000+01:00","cost":165.1500357416,"unitPrice":0.24995,"unitPriceVAT":0.039908,"consumption":660.731,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-12-01T00:00:00.000+01:00","to":"2024-01-01T00:00:00.000+01:00","cost":218.4211066317,"unitPrice":0.21144,"unitPriceVAT":0.033759,"consumption":1033.019,"consumptionUnit":"kWh","currency":"EUR"}]
      
        "type": "state",
        "common": {
          "name": "jsonMonthly",
          "type": "string",
          "role": "text",
          "read": true,
          "write": false
      
      liv-in-sky mickym 2 Replies Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @Maas-Meister last edited by liv-in-sky

        @maas-meister

        evtl mit dem materialdesign chart json widget

        Image 033.png

        anleitung https://github.com/Scrounger/ioBroker.vis-materialdesign#json-chart

        1 Reply Last reply Reply Quote 1
        • mickym
          mickym Most Active @Maas-Meister last edited by mickym

          @maas-meister Ich habe zwar den eCharts Adapter nicht im Einsatz - aber entweder Du schreibst einzelne Datenpunkte in eine Datenbank oder Du kannst doch auch aus JSON das rausziehen.

          36c4bd40-d2b9-42d0-b46d-2b5e80afc609-image.png

          und ich würde ggf halt wieder die geniale JSONATA Bibliothek nutzen - nutzt man NodeRed - dann wächst man damit quasi auf.

          1 Reply Last reply Reply Quote 1
          • mickym
            mickym Most Active last edited by

            Also um Dein oben gezeigtes Array entsprechend in die vom eCharts erwarteten JSON umzuwandeln, nimmst Du JSONATA: https://try.jsonata.org/r0MUIUBX3

            1 Reply Last reply Reply Quote 1
            • mickym
              mickym Most Active last edited by mickym

              Das neue Array kannst dann in einen Datenpunkt schreiben und musst halt dieses eChart Adapter Teil mal befragen, wie Du den JSON dann in den Adapter bekommst.

              b24eb1ef-8fc3-4a27-ab9f-5c5af496533e-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id=";po#/$v(8.UbHdHNkx[6">Objekt</variable>
               </variables>
               <block type="variables_set" id=":=#[V+q{~-1q78b_H^FF" x="-1137" y="-687">
                 <field name="VAR" id=";po#/$v(8.UbHdHNkx[6">Objekt</field>
                 <value name="VALUE">
                   <block type="convert_json2object" id="?vV.vvxZ^NQN^_lWU1f}">
                     <value name="VALUE">
                       <block type="text" id="+fF--6Ew-2u1R;P~2mBq">
                         <field name="TEXT">[{"from":"2023-03-01T00:00:00.000+01:00","to":"2023-04-01T00:00:00.000+02:00","cost":137.372376561,"unitPrice":0.25357,"unitPriceVAT":0.040486,"consumption":541.754,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-04-01T00:00:00.000+02:00","to":"2023-05-01T00:00:00.000+02:00","cost":90.7700860794,"unitPrice":0.243949,"unitPriceVAT":0.03895,"consumption":372.087,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-05-01T00:00:00.000+02:00","to":"2023-06-01T00:00:00.000+02:00","cost":45.3044254425,"unitPrice":0.219539,"unitPriceVAT":0.035052,"consumption":206.362,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-06-01T00:00:00.000+02:00","to":"2023-07-01T00:00:00.000+02:00","cost":41.3673965509,"unitPrice":0.234526,"unitPriceVAT":0.037445,"consumption":176.387,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-07-01T00:00:00.000+02:00","to":"2023-08-01T00:00:00.000+02:00","cost":44.7069721861,"unitPrice":0.225864,"unitPriceVAT":0.036062,"consumption":197.938,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-08-01T00:00:00.000+02:00","to":"2023-09-01T00:00:00.000+02:00","cost":58.4057955355,"unitPrice":0.247937,"unitPriceVAT":0.039587,"consumption":235.567,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-09-01T00:00:00.000+02:00","to":"2023-10-01T00:00:00.000+02:00","cost":62.7189878063,"unitPrice":0.257247,"unitPriceVAT":0.041073,"consumption":243.808,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-10-01T00:00:00.000+02:00","to":"2023-11-01T00:00:00.000+01:00","cost":113.0440595319,"unitPrice":0.243011,"unitPriceVAT":0.0388,"consumption":465.18,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-11-01T00:00:00.000+01:00","to":"2023-12-01T00:00:00.000+01:00","cost":165.1500357416,"unitPrice":0.24995,"unitPriceVAT":0.039908,"consumption":660.731,"consumptionUnit":"kWh","currency":"EUR"},{"from":"2023-12-01T00:00:00.000+01:00","to":"2024-01-01T00:00:00.000+01:00","cost":218.4211066317,"unitPrice":0.21144,"unitPriceVAT":0.033759,"consumption":1033.019,"consumptionUnit":"kWh","currency":"EUR"}]</field>
                       </block>
                     </value>
                   </block>
                 </value>
                 <next>
                   <block type="update" id="?MX[5({c^a)[E=lykv#7">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                     <field name="OID">0_userdata.0.Test.JSON</field>
                     <field name="WITH_DELAY">FALSE</field>
                     <value name="VALUE">
                       <block type="convert_object2json" id=":]vcnitNlb(q[piw1dKL">
                         <field name="PRETTIFY">TRUE</field>
                         <value name="VALUE">
                           <block type="convert_jsonata" id="K^,R%C%:kuMI]a)P0lTr">
                             <value name="EXPRESSION">
                               <shadow type="text" id="Q,$o4b`D}XpbeQ1?~$Z+">
                                 <field name="TEXT">$.{"ts":$toMillis(from),"val":consumption}</field>
                               </shadow>
                             </value>
                             <value name="TARGET">
                               <block type="variables_get" id="zxc9Y^(TcdSMquQab8o^">
                                 <field name="VAR" id=";po#/$v(8.UbHdHNkx[6">Objekt</field>
                               </block>
                             </value>
                           </block>
                         </value>
                       </block>
                     </value>
                   </block>
                 </next>
               </block>
              </xml>
              

              307b604a-96c8-4f07-9fee-029831553c51-image.png

              M 1 Reply Last reply Reply Quote 0
              • M
                Maas-Meister @mickym last edited by

                @mickym

                Vielen Dank für deine Antwort!
                Geht nur bedingt, da sich der Datenpunkt stetig ändert.

                Daher müsste ich das ja in Blockly/Java Triggern und umwandeln.

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Maas-Meister last edited by

                  @maas-meister sagte in Frage: JSON Inhalt als BarWidget Visualisieren:

                  Geht nur bedingt, da sich der Datenpunkt stetig ändert.

                  Das ist doch egal in welchen Datenpunkt Du das schreibst - es wird doch im Blockly gewandelt?

                  1 Reply Last reply Reply Quote 0
                  • M
                    Maas-Meister last edited by

                    @mickym

                    Oh, da habe ich dich wohl falsch verstanden.
                    Ich dachte ich müsste das auf der Seite "https://try.jsonata.org/r0MUIUBX3" umwandeln und das Ergebnis weiterverarbeiten.
                    Aber die Seite dient wohl nur als Info wie die Daten aussehen müssen.
                    Ich muss mich da mal rein fuchsen.

                    Besten dank, ich probiere mal ob echarts die neuen Werte annimmt.

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Maas-Meister last edited by mickym

                      @maas-meister Ich wollte Dir nur zeigen, wie man es lernt.

                      Ausserdem habe ich Dir doch das Blockly hier zum Import angeboten: https://forum.iobroker.net/post/1105940

                      Du musst doch nur den Spoiler aufmachen. Du brauchst doch nur Deine Daten in die Variable Objekt einlesen und dann in den gewünschten Datenpunkt schreiben. Mehr kann ich nun wirklich nicht tun.

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

                        Hab dir mal ein Beispiel in meiner Live webui (http://129.159.205.3:8082/webui/index.html) gemacht wie es dort gehen würde.
                        Screen "chart sample".

                        f6c053b7-2031-4ecb-aa8b-37829dcc2a9a-image.png

                        Das Binding sähe dort so aus:

                        7cf57c19-1f92-496d-8946-d64152badb78-image.png

                        Datum umformatieren ginge z.B. mit diesem String:

                         JSON.parse(__0).map(x => [x.consumption, new Date(Date.parse(x.from) + 60*60+1000).toLocaleDateString()])
                        1 Reply Last reply Reply Quote 1
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        742
                        Online

                        32.1k
                        Users

                        80.8k
                        Topics

                        1.3m
                        Posts

                        4
                        10
                        671
                        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