Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Automatisierung
    5. eCharts Zeitraum in Vis per Button ändern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    eCharts Zeitraum in Vis per Button ändern

    This topic has been deleted. Only users with topic management privileges can see it.
    • Andreios
      Andreios Forum Testing @MCU last edited by

      @mcu sagte in eCharts Zeitraum in Vis per Button ändern:

      @nettworker Beispiel in Jarvis, also nicht VIS!
      jarvis-v310-beta11-Beispiel eCharts Change.gif

      So etwas schwebt mir ja schon lange vor, aber das scheint in Vis nicht so einfach zu sein.

      Kann ich zum Test und/oder Realisierungszeitraum und/oder generell Vis und Jarvis parallel betreiben oder kollidieren die irgendwo?
      Kann ich evtl. sogar meine vorhandene Vis behalten und bei Bedarf Jarvis aufrufen?

      sigi234 1 Reply Last reply Reply Quote 0
      • sigi234
        sigi234 Forum Testing Most Active @Andreios last edited by sigi234

        @andreas-5 sagte in eCharts Zeitraum in Vis per Button ändern:

        So etwas schwebt mir ja schon lange vor, aber das scheint in Vis nicht so einfach zu sein.

        Hab es für Vis so gelöst:

        Animation.gif

        vis-inventwo: vis-radiobutton-list

        Danke an @mcu für das Skript.

        https://mcuiobroker.gitbook.io/jarvis-infos/jarvis/system-effektprog./echartschange

        Andreios 1 Reply Last reply Reply Quote 1
        • Andreios
          Andreios Forum Testing @sigi234 last edited by Andreios

          @sigi234 sagte in eCharts Zeitraum in Vis per Button ändern:

          @andreas-5 sagte in eCharts Zeitraum in Vis per Button ändern:

          So etwas schwebt mir ja schon lange vor, aber das scheint in Vis nicht so einfach zu sein.

          Hab es für Vis so gelöst:

          Animation.gif

          Ich habe erst kürzlich von Flot auch eCharts. Bei Flot hatte ich keine einfache Möglichkeit gefunden.
          Ohne es jetzt nachsehen zu können (Bin nicht zu Hause), setzt Du da Datenpunkte im Diagramm oder wie hast Du das gelöst?
          Wenn ich das einfach in die vorhandene Vis bauen kann, ist das natürlich einfacher, wobei mich bei Jarvis auch das responsive Design wegen meiner verschiedenen Auflösungen interessiert.

          Edit: Ok, ist also ein Skript.

          1 Reply Last reply Reply Quote 0
          • N
            nettworker @MCU last edited by

            @mcu
            Sodele, neue Kiste läuft einwandfrei mit allen benötigten Adaptern inkl. Scripte.

            Wir könnten also weiter machen wenn du Zeit und Lust hast.

            M 1 Reply Last reply Reply Quote 0
            • M
              MCU @nettworker last edited by

              @nettworker Dann lies dir erstmal das in dem Link oben durch. EchartChange.

              N 1 Reply Last reply Reply Quote 0
              • N
                nettworker @MCU last edited by nettworker

                @mcu
                @mcu
                select value list ausgewählt, datenpunkt eingestellt, die von dir vorgegebenen Werte eingetragen und nix passiert.
                Nachdem ich den Eintrag gewählt hab, passiert im Chart nichts, aber der Wert im DP ändert sich.

                da4fcb14-36fe-4c03-9c36-173c8b303706-image.png

                M 1 Reply Last reply Reply Quote 0
                • M
                  MCU @nettworker last edited by 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 1 Reply Last reply Reply Quote 0
                  • N
                    nettworker @MCU last edited by

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

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MCU @nettworker last edited by 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 1 Reply Last reply Reply Quote 0
                      • N
                        nettworker @MCU last edited by

                        @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 Reply Quote 0
                        • M
                          MCU @nettworker last edited by

                          @nettworker

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

                          N 1 Reply Last reply Reply Quote 0
                          • N
                            nettworker @MCU last edited by

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

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              MCU @nettworker last edited by

                              @nettworker Immer wieder gerne.

                              1 Reply Last reply Reply Quote 1
                              • R
                                ralle211 last edited by 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 1 Reply Last reply Reply Quote 0
                                • M
                                  MCU @ralle211 last edited by

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

                                  R 1 Reply Last reply Reply Quote 0
                                  • R
                                    ralle211 @MCU last edited by

                                    @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 Reply Quote 0
                                    • M
                                      MCU @ralle211 last edited by 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 1 Reply Last reply Reply Quote 0
                                      • R
                                        ralle211 @MCU last edited by 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 1 Reply Last reply Reply Quote 0
                                        • L
                                          lifeislol @ralle211 last edited by

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          466
                                          Online

                                          31.7k
                                          Users

                                          79.7k
                                          Topics

                                          1.3m
                                          Posts

                                          9
                                          70
                                          3807
                                          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