Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Visualisierung
  4. Diagramm mehrerer Datenpunkte ohne History

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    371

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    327

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    945

Diagramm mehrerer Datenpunkte ohne History

Geplant Angeheftet Gesperrt Verschoben Visualisierung
visflot adapter
45 Beiträge 6 Kommentatoren 3.2k Aufrufe 5 Beobachtet
  • Ä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.
  • D dtp

    Hier gingen jetzt zwei Sachen durcheinander. Zum Einen das Skript von @paul53 zur Erstellung einer JSON-Tabelle und dann meine Version, die die Grundlage für charts.js bilden sollte. Das sollten wir vielleicht klarer trennen.

    Mir ging es in erster Linie um eine grafische Darstellung der Vorhersagewerte. Eine JSON-Tabelle ist da ggf. nicht so zielführend, zumal man die Werte ja auch problemlos einzeln mit entsprechenden Widgets als Tabelle darstellen kann.

    @paul53: hab die Units aus den Array-Datenpunkten ebenfalls entfernt. Danke für den Hinweis.

    Hab mir nun mal charts.js mit

    npm install chart.js --save
    

    installiert. Unter node_modules befinden sich auch die entsprechenden charts.js-Verzeichnisse. Doch nun stocke ich bei der Erstellung des entsprechenden Skripts mit

    require(['chart.js/dist/Chart.js'], function(Chart){
      var myChart = new Chart(ctx, {...});
    });
    

    Wie und wo zeige ich die entsprechenden Daten an? Jemand eine Idee?

    NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    schrieb am zuletzt editiert von
    #32

    @dtp sagte in Diagramm mehrerer Datenpunkte ohne History:

    Mir ging es in erster Linie um eine grafische Darstellung der Vorhersagewerte.

    Ja, das möchte ich auch!
    Mit dem Script von @paul53 funktioniert das leider nicht.

    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
    ° Node.js Fixer ---> iob nodejs-update
    ° Fixer ---> iob fix

    1 Antwort Letzte Antwort
    0
    • NegaleinN Negalein

      @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

      @Negalein 40 Zeilen ?

      So zB hätte ich gedacht
      Screenshot 2019-08-22 14.10.17.png

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #33

      @Negalein sagte:

      So zB hätte ich gedacht

      Versuche es mal so (nicht getestet)

      var path    = "daswetter.0.NextDaysDetailed.Location_1.Day_"; // Pfad der String-Datenpunkte aus "list"
      var idTable = "vis.dasWetterTable"; // Pfad des Datenpunkts für das vis-Json
      
      // Datenpunkte anlegen
      createState(idTable, "", {
        name: idTable,
        desc: 'Tabelle der Vorhersagewerte aus daswetter.com als Json-Objekt',
        type: 'string',
        role: 'json'
      });
      
      function wetter() {
         var list = [];
         for(let i = 0; i < 20; i++) {
            var j = i % 4;
            var sensor = 'temp_value';
            var unit = '°C';
            if(j == 1) {
      	     sensor = 'humidity_value';
      	     unit = '%rH';
            } 
            else if(j == 2) {
      	     sensor = 'rain_value';
      	     unit = 'mm';
            }		 
            else if(j == 3) {
      	     sensor = 'wind_value';
                   unit = 'km/h';
            }		 
            var day = Math.floor(i / 4);
            var tage = ['Heute','Morgen','Tag 2','Tag 3','Tag 4']
            list[i] = {};
            if(j == 0) list[i].Tag = tage[day];
            list[i].Sensor = unit;
            day = day + 1;
            list[i]['02:00'] = getState(path + day + '.Hour_1.' + sensor).val;
            list[i]['05:00'] = getState(path + day + '.Hour_2.' + sensor).val;
            list[i]['08:00'] = getState(path + day + '.Hour_3.' + sensor).val;
            list[i]['11:00'] = getState(path + day + '.Hour_4.' + sensor).val;
            list[i]['14:00'] = getState(path + day + '.Hour_5.' + sensor).val;
            list[i]['17:00'] = getState(path + day + '.Hour_6.' + sensor).val;
            list[i]['20:00'] = getState(path + day + '.Hour_7.' + sensor).val;
            list[i]['23:00'] = getState(path + day + '.Hour_8.' + sensor).val;
         }   
         var json = JSON.stringify(list);
         // log(json);
         setState(idTable, json, true);
      }
      
      // Trigger
      schedule('10 */15 * * * *', wetter);
      
      

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      NegaleinN 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @Negalein sagte:

        So zB hätte ich gedacht

        Versuche es mal so (nicht getestet)

        var path    = "daswetter.0.NextDaysDetailed.Location_1.Day_"; // Pfad der String-Datenpunkte aus "list"
        var idTable = "vis.dasWetterTable"; // Pfad des Datenpunkts für das vis-Json
        
        // Datenpunkte anlegen
        createState(idTable, "", {
          name: idTable,
          desc: 'Tabelle der Vorhersagewerte aus daswetter.com als Json-Objekt',
          type: 'string',
          role: 'json'
        });
        
        function wetter() {
           var list = [];
           for(let i = 0; i < 20; i++) {
              var j = i % 4;
              var sensor = 'temp_value';
              var unit = '°C';
              if(j == 1) {
        	     sensor = 'humidity_value';
        	     unit = '%rH';
              } 
              else if(j == 2) {
        	     sensor = 'rain_value';
        	     unit = 'mm';
              }		 
              else if(j == 3) {
        	     sensor = 'wind_value';
                     unit = 'km/h';
              }		 
              var day = Math.floor(i / 4);
              var tage = ['Heute','Morgen','Tag 2','Tag 3','Tag 4']
              list[i] = {};
              if(j == 0) list[i].Tag = tage[day];
              list[i].Sensor = unit;
              day = day + 1;
              list[i]['02:00'] = getState(path + day + '.Hour_1.' + sensor).val;
              list[i]['05:00'] = getState(path + day + '.Hour_2.' + sensor).val;
              list[i]['08:00'] = getState(path + day + '.Hour_3.' + sensor).val;
              list[i]['11:00'] = getState(path + day + '.Hour_4.' + sensor).val;
              list[i]['14:00'] = getState(path + day + '.Hour_5.' + sensor).val;
              list[i]['17:00'] = getState(path + day + '.Hour_6.' + sensor).val;
              list[i]['20:00'] = getState(path + day + '.Hour_7.' + sensor).val;
              list[i]['23:00'] = getState(path + day + '.Hour_8.' + sensor).val;
           }   
           var json = JSON.stringify(list);
           // log(json);
           setState(idTable, json, true);
        }
        
        // Trigger
        schedule('10 */15 * * * *', wetter);
        
        
        NegaleinN Offline
        NegaleinN Offline
        Negalein
        Global Moderator
        schrieb am zuletzt editiert von
        #34

        @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

        @Negalein sagte:

        So zB hätte ich gedacht

        Versuche es mal so (nicht getestet)

        Funktioniert leider nicht.
        Aber egal. Ich versuchs irgendwie grafisch umzusetzen.

        Danke
        Edit vis (2).png

        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
        ° Node.js Fixer ---> iob nodejs-update
        ° Fixer ---> iob fix

        paul53P 1 Antwort Letzte Antwort
        0
        • NegaleinN Negalein

          @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

          @Negalein sagte:

          So zB hätte ich gedacht

          Versuche es mal so (nicht getestet)

          Funktioniert leider nicht.
          Aber egal. Ich versuchs irgendwie grafisch umzusetzen.

          Danke
          Edit vis (2).png

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #35

          @Negalein
          Ändere mal

                if(j == 0) list[i].Tag = tage[day];
          

          in

                if(j == 0) list[i].Tag = tage[day];
                else list[i].Tag = '';
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          sigi234S 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @Negalein
            Ändere mal

                  if(j == 0) list[i].Tag = tage[day];
            

            in

                  if(j == 0) list[i].Tag = tage[day];
                  else list[i].Tag = '';
            
            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb am zuletzt editiert von sigi234
            #36

            @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

            @Negalein
            Ändere mal

                  if(j == 0) list[i].Tag = tage[day];
            

            in

                  if(j == 0) list[i].Tag = tage[day];
                  else list[i].Tag = '';
            

            Schaut bei mir so aus:

            Screenshot (3913).png

            Edit:

            Screenshot (3915).png

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            paul53P 1 Antwort Letzte Antwort
            0
            • D Offline
              D Offline
              dtp
              schrieb am zuletzt editiert von
              #37

              Also das finde ich aber ehrlich gesagt alles andere, als übersichtlich. Da würde ich lieber bei der Ansicht aus meinem Ausgangsposting bleiben.

              Eigentlich schwebte mir eher sowas vor:

              2019-08-22_16h58_31.png

              ioBroker im Docker-Container auf Synology DiskStation DS718+, HomeMatic IP über CCU3, IKEA Dirigera inkl. Matter, Apple Homekit, Amazon Alexa.

              NegaleinN 1 Antwort Letzte Antwort
              0
              • sigi234S sigi234

                @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

                @Negalein
                Ändere mal

                      if(j == 0) list[i].Tag = tage[day];
                

                in

                      if(j == 0) list[i].Tag = tage[day];
                      else list[i].Tag = '';
                

                Schaut bei mir so aus:

                Screenshot (3913).png

                Edit:

                Screenshot (3915).png

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #38

                @sigi234 sagte:

                Edit:

                Passt doch zur Excel-Tabelle von @Negalein.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                sigi234S 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @sigi234 sagte:

                  Edit:

                  Passt doch zur Excel-Tabelle von @Negalein.

                  sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #39

                  @paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:

                  @sigi234 sagte:

                  Edit:

                  Passt doch zur Excel-Tabelle von @Negalein.

                  Ja sag ich eh...........👍

                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                  Immer Daten sichern!

                  1 Antwort Letzte Antwort
                  0
                  • D dtp

                    Also das finde ich aber ehrlich gesagt alles andere, als übersichtlich. Da würde ich lieber bei der Ansicht aus meinem Ausgangsposting bleiben.

                    Eigentlich schwebte mir eher sowas vor:

                    2019-08-22_16h58_31.png

                    NegaleinN Offline
                    NegaleinN Offline
                    Negalein
                    Global Moderator
                    schrieb am zuletzt editiert von
                    #40

                    @dtp sagte in Diagramm mehrerer Datenpunkte ohne History:

                    Eigentlich schwebte mir eher sowas vor:

                    2019-08-22_16h58_31.png

                    Mir auch!
                    Eventuell wird es ja noch was! :)

                    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                    ° Node.js Fixer ---> iob nodejs-update
                    ° Fixer ---> iob fix

                    1 Antwort Letzte Antwort
                    0
                    • D dtp

                      Oh, hab da was gefunden. Klick!

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #41

                      @dtp sagte:

                      Oh, hab da was gefunden. Klick!

                      Bist Du damit nicht weiter gekommen ?

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      S 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @dtp sagte:

                        Oh, hab da was gefunden. Klick!

                        Bist Du damit nicht weiter gekommen ?

                        S Offline
                        S Offline
                        Streit187
                        schrieb am zuletzt editiert von
                        #42

                        @paul53 Darf ich dieses, zugegeben sehr altes Thema noch einmal aufwärmen?
                        Ich habe jetzt das ganz Internet durch aber scheinbar gibt es keine Möglichkeit die von deinem Skript ausgegebenen Daten in einem einfachen Graphen darzustellen so wie in dem angehängten Bild.
                        Ich kann das einfach nicht glauben. graph.JPG

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • S Streit187

                          @paul53 Darf ich dieses, zugegeben sehr altes Thema noch einmal aufwärmen?
                          Ich habe jetzt das ganz Internet durch aber scheinbar gibt es keine Möglichkeit die von deinem Skript ausgegebenen Daten in einem einfachen Graphen darzustellen so wie in dem angehängten Bild.
                          Ich kann das einfach nicht glauben. graph.JPG

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #43

                          @streit187 sagte: keine Möglichkeit die von deinem Skript ausgegebenen Daten in einem einfachen Graphen darzustellen so wie in dem angehängten Bild.

                          Mit der Darstellung von Graphen kenne ich mich nicht aus (außer Flot in Verbindung mit History).

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          S 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @streit187 sagte: keine Möglichkeit die von deinem Skript ausgegebenen Daten in einem einfachen Graphen darzustellen so wie in dem angehängten Bild.

                            Mit der Darstellung von Graphen kenne ich mich nicht aus (außer Flot in Verbindung mit History).

                            S Offline
                            S Offline
                            Streit187
                            schrieb am zuletzt editiert von
                            #44

                            @paul53 Mit Flot und History komme ich auch gut zurecht.
                            Aber es handelt sich ja um JSON Daten und ich habe nun das hier gefunden: https://github.com/Scrounger/ioBroker.vis-materialdesign#json-chart
                            Damit sollte es eigentlich sehr gut funktionieren aber mir fehlt leider hier auch das KnowHow diese Daten nun in dieses Chart zu bekommen. Vielleicht findet sich ja hier noch jemand mit den entsprechenden Fähigkeiten.
                            Das ganz ist nämlich auf jeden Fall für jeden Besitzer ein PV Anlage interessant da komplett kostenlos.

                            S 1 Antwort Letzte Antwort
                            0
                            • S Streit187

                              @paul53 Mit Flot und History komme ich auch gut zurecht.
                              Aber es handelt sich ja um JSON Daten und ich habe nun das hier gefunden: https://github.com/Scrounger/ioBroker.vis-materialdesign#json-chart
                              Damit sollte es eigentlich sehr gut funktionieren aber mir fehlt leider hier auch das KnowHow diese Daten nun in dieses Chart zu bekommen. Vielleicht findet sich ja hier noch jemand mit den entsprechenden Fähigkeiten.
                              Das ganz ist nämlich auf jeden Fall für jeden Besitzer ein PV Anlage interessant da komplett kostenlos.

                              S Offline
                              S Offline
                              Streit187
                              schrieb am zuletzt editiert von
                              #45

                              @paul53
                              Ich hab es geschafft. Mit deiner Hilfe könnten wir das Thema jetzt schließen. Könntest du dein Skript wie folgt anpassen:

                              Neuen Datenpunkt anlegen:
                              in: 0_userdata.0/Solar/Energie
                              Name: Energie
                              Rolle: table
                              Art: Objekt
                              Typ: State
                              Wert: Die Response der bekannten URL in dieser Form:
                              { "axisLabels": ["8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18"],
                              "graphs": <erster Wert>
                              z.B.: [{"data": [0, 0.01, 0.588, 1.392, 1.484, 1.1, 1.05, 0.95, 0.7, 0.22, 0, 0, 0.02, 0.45, 0.82, 0.98, 1.1, 1.05, 0.95, 0.7, 0.22, 0],
                              "type": "line",
                              "yAxis_min": 0,
                              "yAxis_max": 10,
                              "yAxis_step": 1,
                              "yAxis_position": "left",
                              "yAxis_appendix": " kW",
                              "datalabel_show": false}]}

                              Neuen Datenpunkt anlegen:
                              in: 0_userdata.0/Solar/Leistung
                              Name: Leistung
                              Rolle: table
                              Art: Objekt
                              Typ: State
                              Wert: Die Response der bekannten URL in dieser Form:
                              { "axisLabels": ["8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18"],
                              "graphs": <zweiter Wert>,
                              "type": "line",
                              "yAxis_min": 0,
                              "yAxis_max": 10,
                              "yAxis_step": 1,
                              "yAxis_position": "left",
                              "yAxis_appendix": " kW",
                              "datalabel_show": false}]}

                              Diesen Datenpunkt dann einfach nur noch im JSON Chart vom Material Design Widget Adapter auswählen und fertig.
                              Das wäre großartig.

                              1 Antwort Letzte Antwort
                              0

                              Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                              Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                              Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                              Registrieren Anmelden
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              415

                              Online

                              32.8k

                              Benutzer

                              82.8k

                              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