Ankündigung

Einklappen

Hinweis

Die Forenregeln wurden überarbeitet (Stand 7.11.22). Sie sind ab sofort verbindlich. Wir bitten um Beachtung.
Mehr anzeigen
Weniger anzeigen

Interpolieren der angezeigten Werte in Plots

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Interpolieren der angezeigten Werte in Plots

    Hallo,

    ich bin gerade dabei mir eine Visu in der aktuellen Smartvisu-Version zu erstellen.
    Ich würde gerne einen einfachen Plot mit 3 Raumtemperaturen erstellen. Die Temperaturen werde jedoch nur bei Änderung auf dem Bus gesendet.
    Weden diese Werte nun in einem Plot angezeigt, bekommt man lediglich nur den Wert des Sensors angezeigt, der den nächst naheliegenden Datenpunkt besitzt!

    grafik.png
    Code:
    {{ plot.period('', ['eg.buero.heizung.soll', 'eg.buero.heizung.fussboden', 'eg.buero.heizung.ist'], 'avg', '72h', 'now', '','' , '', ['Soll', 'Fußboden', 'Ist'], ['#a00', '#cdc9c9'], ['line', 'line', 'line'], '', '1h', '', '', '', '', '°C') }}
    Ich würde gerne immer alle 3 Werte angezeigt bekommen! Welche Einstellungen muss ich wählen, damit die anderen Werte zur Position des Mauszeigers interpolliert werden?

    Gruß,
    Simon

    #2
    Hallo Simon,
    die Plots rufen die historischen Daten aus der Datenbank ab. Hast Du das database-Plugin in smarthomeNG aktiviert und die items so definiert, dass sie in die Datenbank geschrieben werden?

    Gruß
    Wolfram

    Kommentar


      #3
      Hallo Wolfram,

      ja, das DB-Plugin ist aktiv und es werden auch die Werte mitgeloggt.

      Es sind auch alle Werte verfügbar, es wird, wenn man mit dem Mauszeiger auf den Plot fährt, halt immer nur 1 Wert angezeigt.
      Und ich dachte mir, das liegt wahrscheinlich daran, dass KOs mit den Werten einfach nicht zu selben Zeit aktualisiert wurden.

      Hier 2 Auszüge:
      grafik.png

      grafik.png
      Beim Drüberfahren mit der Maus bekomme ich genau diese Datenpunkte angezeigt, aber halt nie beide zusammen wie beim Beispiel des rtr
      grafik.png

      Kommentar


        #4
        Hallo Simon,

        sorry, jetzt weiß ich erst, was Du meinst. Ich hatte wegen der ungünstigen Farben in Deinem ersten Post am Handy nur eine Kurve gesehen und dadurch Deinen Hinweis zu den Updates falsch verstanden. Es sind aber alle 3 Kurven da. Also funktioniert der Plot an sich.

        Das Datenbank-Plugin liefert entsprechend des vorgegebenen Zeitrasters (100 Punkte in 72 Stunden) die passenden Wertepaare aus Zeitstempel und Item-Wert. Diese werden 1:1 an Highcharts übergeben. Die Tooltip-Funktion von Highcharts zeigt dann für alle Kurven die Werte mit dem Zeitstempel an, der zur X-Position des Mauszeigers gehört - sofern diese Werte vorhanden sind. Eine Interpolation ist nicht möglich. Der Tooltip springt also an den vorhandenen Punkten zwischen den Kurven hin und her, wenn Du den Mauszeiger bewegst.

        Wenn Du immer alle 3 Werte gleichzeitig im Tooltip haben willst, musst Du die Daten synchronisieren. Also entweder in smarthomeNG per eval oder Logik dafür sorgen, dass bei jeder Änderung von einem der items die anderen items mit demselben Zeitstempel in die Datenbank geschrieben werden, oder in smartVISU eine Kopie des Plotwidgets erstellen und das Skript um eine Synchronisation der Daten erweitern.


        Gruß
        Wolfram


        Kommentar

        Lädt...
        X