Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    998

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

eCharts Zeitraum in Vis per Button ändern

Geplant Angeheftet Gesperrt Verschoben Automatisierung
70 Beiträge 9 Kommentatoren 7.9k Aufrufe 12 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N nettworker

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

    M Online
    M Online
    MCU
    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von
      #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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        0
        • M MCU

          @nettworker

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

          N Offline
          N Offline
          nettworker
          schrieb am zuletzt editiert von
          #63

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

          M 1 Antwort Letzte Antwort
          0
          • N nettworker

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

            M Online
            M Online
            MCU
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            1
            • R Offline
              R Offline
              ralle211
              schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #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 Antwort Letzte Antwort
                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
                  schrieb am zuletzt editiert von
                  #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 Antwort Letzte Antwort
                  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
                    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                    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
                      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                      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
                        schrieb am zuletzt editiert von
                        #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 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        607

                        Online

                        32.5k

                        Benutzer

                        81.6k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe