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. Einsteigerfragen
  4. Automatisierung
  5. eCharts Zeitraum in Vis per Button ändern

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

eCharts Zeitraum in Vis per Button ändern

Scheduled Pinned Locked Moved Automatisierung
70 Posts 9 Posters 8.4k Views 12 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.
  • M MCU

    @nettworker Wie lautet der eCharts-DP?
    fd95897b-1a5d-430a-a4ff-7bba24d85dec-image.png
    Um ihn zu sehen muss man den Expertenmodus aktivieren.
    feeb2ea0-b901-42b2-bca1-96d8825a78a0-image.png

    N Offline
    N Offline
    nettworker
    wrote on last edited by
    #59

    @mcu
    5fd0025c-b5d6-4bd0-9ed6-af16c778a98e-image.png

    M 1 Reply Last reply
    0
    • N nettworker

      @mcu
      5fd0025c-b5d6-4bd0-9ed6-af16c778a98e-image.png

      M Online
      M Online
      MCU
      wrote on last edited by MCU
      #60

      @nettworker Also muss echarts.0.Einspeisung_Garage in den echartsDP rein geschrieben werden.
      b242e858-5215-4d7b-ad8f-9174fd46775f-image.png
      Natürlich den DP nehmen, den du als IFrame anzeigst.

      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

      N 1 Reply Last reply
      0
      • M MCU

        @nettworker Also muss echarts.0.Einspeisung_Garage in den echartsDP rein geschrieben werden.
        b242e858-5215-4d7b-ad8f-9174fd46775f-image.png
        Natürlich den DP nehmen, den du als IFrame anzeigst.

        N Offline
        N Offline
        nettworker
        wrote on last edited by
        #61

        @mcu
        Fehlermeldung im log:
        javascript.0
        2022-11-13 23:09:08.220 error Function "setObject" is not allowed. Use adapter settings to allow it.

        M 1 Reply Last reply
        0
        • N nettworker

          @mcu
          Fehlermeldung im log:
          javascript.0
          2022-11-13 23:09:08.220 error Function "setObject" is not allowed. Use adapter settings to allow it.

          M Online
          M Online
          MCU
          wrote on last edited by
          #62

          @nettworker

          2b259ad1-4343-494c-aad8-3577c529f67f-image.png
          f889edeb-8bb8-436b-982e-8ade9117380b-image.png

          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

          N 1 Reply Last reply
          0
          • M MCU

            @nettworker

            2b259ad1-4343-494c-aad8-3577c529f67f-image.png
            f889edeb-8bb8-436b-982e-8ade9117380b-image.png

            N Offline
            N Offline
            nettworker
            wrote on last edited by
            #63

            @mcu
            Ui, das war ne schwere Geburt :)
            Danke für deine Hilfe.

            M 1 Reply Last reply
            0
            • N nettworker

              @mcu
              Ui, das war ne schwere Geburt :)
              Danke für deine Hilfe.

              M Online
              M Online
              MCU
              wrote on last edited by
              #64

              @nettworker Immer wieder gerne.

              NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

              1 Reply Last reply
              1
              • R Offline
                R Offline
                ralle211
                wrote on last edited by ralle211
                #65

                Hi zusammen,

                auch wenn das Thema etwas alt ist passt es voll zu meiner Suche:

                Ich habe in VIS ein eChart eingebunden welches mir Verlaufsdaten meiner Solaranlage zeigt (ganzer Tag). Jetzt möchte ich per Button tageweise Blättern um mir zB den Tag gestern nochmal anzuschauen.

                Das oben verlinkte JavaScript hab ich mal getestet, ist aber nicht ganz das richtige da man dort den Darstellungstyp und das Datum nicht ändern kann.
                Darstellungstyp ist Statisch/Relativ, wenn statisch gewählt ist kann man ein Datum einstellen. In eChart geht das gut von den Parametern. Ich komme nur von VIS aus nicht dran.

                Hat jemand vielleicht ein ähnliches Skript mit diesen Parametern?

                Danke und Grüße

                M 1 Reply Last reply
                0
                • R ralle211

                  Hi zusammen,

                  auch wenn das Thema etwas alt ist passt es voll zu meiner Suche:

                  Ich habe in VIS ein eChart eingebunden welches mir Verlaufsdaten meiner Solaranlage zeigt (ganzer Tag). Jetzt möchte ich per Button tageweise Blättern um mir zB den Tag gestern nochmal anzuschauen.

                  Das oben verlinkte JavaScript hab ich mal getestet, ist aber nicht ganz das richtige da man dort den Darstellungstyp und das Datum nicht ändern kann.
                  Darstellungstyp ist Statisch/Relativ, wenn statisch gewählt ist kann man ein Datum einstellen. In eChart geht das gut von den Parametern. Ich komme nur von VIS aus nicht dran.

                  Hat jemand vielleicht ein ähnliches Skript mit diesen Parametern?

                  Danke und Grüße

                  M Online
                  M Online
                  MCU
                  wrote on last edited by
                  #66

                  @ralle211 Vielleicht ist das besser?
                  https://mcuiobroker.gitbook.io/jarvis-infos/jarvis-v3/system-effektprog./echartschange/tests

                  NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                  Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                  R 1 Reply Last reply
                  0
                  • M MCU

                    @ralle211 Vielleicht ist das besser?
                    https://mcuiobroker.gitbook.io/jarvis-infos/jarvis-v3/system-effektprog./echartschange/tests

                    R Offline
                    R Offline
                    ralle211
                    wrote on last edited by
                    #67

                    @mcu
                    Leider habe ich 6 Kurven übereinander. In der Beschreibung steht dass es nur mit einer Kurve funktioniert.

                    Ich habe ein wenig probiert. Es war einfacher als gedacht, das eChartsChange Skript abzuändern. Ich kann jetzt ein Datum angeben und bekomme für den Tag die Kurve angezeigt.

                    Danke trotzdem für die Antwort

                    M 1 Reply Last reply
                    0
                    • R ralle211

                      @mcu
                      Leider habe ich 6 Kurven übereinander. In der Beschreibung steht dass es nur mit einer Kurve funktioniert.

                      Ich habe ein wenig probiert. Es war einfacher als gedacht, das eChartsChange Skript abzuändern. Ich kann jetzt ein Datum angeben und bekomme für den Tag die Kurve angezeigt.

                      Danke trotzdem für die Antwort

                      M Online
                      M Online
                      MCU
                      wrote on last edited by MCU
                      #68

                      @ralle211 Das ist ja nur dann wenn man die id wechseln möchte. Bei deinem Chart kann man mit der Version auch normal Datum Zeit und Themes ändern.
                      Man muss aber für ein Chart ein Skript haben.
                      Wer aber nur Charts mit einer Kurve hat, kann alle mit einem Chart darstellen und benötigt nur ein Script, ähnlich wie beim eChartsChangeSelect.
                      Aber wenn du es selber lösen konntest, stell es bitte auch den anderen zur Verfügung. Danke.

                      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                      R 1 Reply Last reply
                      0
                      • M MCU

                        @ralle211 Das ist ja nur dann wenn man die id wechseln möchte. Bei deinem Chart kann man mit der Version auch normal Datum Zeit und Themes ändern.
                        Man muss aber für ein Chart ein Skript haben.
                        Wer aber nur Charts mit einer Kurve hat, kann alle mit einem Chart darstellen und benötigt nur ein Script, ähnlich wie beim eChartsChangeSelect.
                        Aber wenn du es selber lösen konntest, stell es bitte auch den anderen zur Verfügung. Danke.

                        R Offline
                        R Offline
                        ralle211
                        wrote on last edited by ralle211
                        #69

                        @mcu
                        Logo gerne :-)

                        Das eChart ist fest eingestellt auf:
                        cb081743-ce10-43b5-a2d0-632e805fe3b9-grafik.png

                        Mit dem Skript ändere ich dann nur noch das Datum (nicht die Uhrzeit).

                        Ich hab das Skript rudimentär gehalten:

                        //
                        // - Änderung voangezeigten Tag im ausgewählten eCharts
                        // 
                        
                        let echartDP            = '0_userdata.0.echarts';
                        let echart_echartsDP    = echartDP + '.echartsDP'; //Name des Charts in eCharts
                        let echart_start        = echartDP + '.start';
                        let echart_end          = echartDP + '.end';
                        
                        createStateAsync(echart_start, {read: true, write: true, name: "Startdatum des Anzeigebereichs", type: "string", role: "", def: "" });
                        createStateAsync(echart_end, {read: true, write: true, name: "Enddatum des Anzeigebereichs", type: "string", role: "", def: "" });
                        createStateAsync(echart_echartsDP, {read: true, write: true, name: "eCharts-DP", type: "string", role: "", def: "" });
                        
                        on({id: echart_echartsDP, change: "any"}, function (obj) {
                            let value = obj.state.val;
                            if (value!=null &&value!=undefined && value!=''){
                                let echartsDP = getState(echart_echartsDP).val;
                                
                                if (echartsDP !=''){
                                    let eChartobj = getObject(echartsDP);
                                    let startDatum = getState(echart_start).val;
                                    let endDatum = getState(echart_end).val;
                                }else{
                                    log('Angegebener eChart-DP existiert nicht!','warn');
                                }
                            }
                        });
                        
                        on({id: echart_start, change: "any"}, function (obj) {
                            let value = obj.state.val;
                            if (value!=null &&value!=undefined && value!=''){
                                let echartsSTART =getState(echart_echartsDP).val;
                                if (existsObject(echartsSTART)){
                                    let objDP = getObject(echartsSTART);
                                    objDP.native.data.start = value;
                                    setObject(echartsSTART,objDP);
                                }else{
                                    log('eCharts-DP ist nicht vorhanden! Eingeben!','warn');
                                }
                            }
                        });
                        
                        on({id: echart_end, change: "any"}, function (obj) {
                            let value = obj.state.val;
                            if (value!=null &&value!=undefined && value!=''){
                                let echartsEND =getState(echart_echartsDP).val;
                                if (existsObject(echartsEND)){
                                    let objDP = getObject(echartsEND);
                                    objDP.native.data.end = value;
                                    setObject(echartsEND,objDP);
                                }else{
                                    log('eCharts-DP ist nicht vorhanden! Eingeben!','warn');
                                }
                            }
                        });
                        
                        

                        In meiner View springe ich dann über die Pfeile tageweise vor oder zurück.
                        IMG_1295.jpeg

                        L 1 Reply Last reply
                        0
                        • R ralle211

                          @mcu
                          Logo gerne :-)

                          Das eChart ist fest eingestellt auf:
                          cb081743-ce10-43b5-a2d0-632e805fe3b9-grafik.png

                          Mit dem Skript ändere ich dann nur noch das Datum (nicht die Uhrzeit).

                          Ich hab das Skript rudimentär gehalten:

                          //
                          // - Änderung voangezeigten Tag im ausgewählten eCharts
                          // 
                          
                          let echartDP            = '0_userdata.0.echarts';
                          let echart_echartsDP    = echartDP + '.echartsDP'; //Name des Charts in eCharts
                          let echart_start        = echartDP + '.start';
                          let echart_end          = echartDP + '.end';
                          
                          createStateAsync(echart_start, {read: true, write: true, name: "Startdatum des Anzeigebereichs", type: "string", role: "", def: "" });
                          createStateAsync(echart_end, {read: true, write: true, name: "Enddatum des Anzeigebereichs", type: "string", role: "", def: "" });
                          createStateAsync(echart_echartsDP, {read: true, write: true, name: "eCharts-DP", type: "string", role: "", def: "" });
                          
                          on({id: echart_echartsDP, change: "any"}, function (obj) {
                              let value = obj.state.val;
                              if (value!=null &&value!=undefined && value!=''){
                                  let echartsDP = getState(echart_echartsDP).val;
                                  
                                  if (echartsDP !=''){
                                      let eChartobj = getObject(echartsDP);
                                      let startDatum = getState(echart_start).val;
                                      let endDatum = getState(echart_end).val;
                                  }else{
                                      log('Angegebener eChart-DP existiert nicht!','warn');
                                  }
                              }
                          });
                          
                          on({id: echart_start, change: "any"}, function (obj) {
                              let value = obj.state.val;
                              if (value!=null &&value!=undefined && value!=''){
                                  let echartsSTART =getState(echart_echartsDP).val;
                                  if (existsObject(echartsSTART)){
                                      let objDP = getObject(echartsSTART);
                                      objDP.native.data.start = value;
                                      setObject(echartsSTART,objDP);
                                  }else{
                                      log('eCharts-DP ist nicht vorhanden! Eingeben!','warn');
                                  }
                              }
                          });
                          
                          on({id: echart_end, change: "any"}, function (obj) {
                              let value = obj.state.val;
                              if (value!=null &&value!=undefined && value!=''){
                                  let echartsEND =getState(echart_echartsDP).val;
                                  if (existsObject(echartsEND)){
                                      let objDP = getObject(echartsEND);
                                      objDP.native.data.end = value;
                                      setObject(echartsEND,objDP);
                                  }else{
                                      log('eCharts-DP ist nicht vorhanden! Eingeben!','warn');
                                  }
                              }
                          });
                          
                          

                          In meiner View springe ich dann über die Pfeile tageweise vor oder zurück.
                          IMG_1295.jpeg

                          L Offline
                          L Offline
                          lifeislol
                          wrote on last edited by
                          #70

                          @ralle211
                          Hallo,

                          ich bin zufällig über den Thread gestolpert; ich bin eigentlich schon ewig auf der Suche nach eben der Lösung, dass ich einen Graphen tageweise ändern möchte.

                          Ich habe iobroker über einen RPi laufen und möchte eine eChartsanzeige von der PV-Anlage wiedergeben. Als Visualisierung nutze ich das neue Vis-2.

                          Ich habe das Skript kopiert und ausgeführt. In den Datenpunkten habe ich das entsprechende Chart eingefügt (ist im Unterordner "Verbrauch"), als start und end das aktuelle Datum.

                          Screenshot 2024-02-29 142944.jpg

                          Wenn ich das Chart über iFrame einbinde, taucht bei mir aber leider keine Auswahl der Tage auf. Wie kann ich das am Besten umsetzen?

                          Screenshot 2024-02-29 143434.png

                          Vielen Dank vorab.

                          Viele Grüße

                          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

                          690

                          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