NEWS
APG Preise in eCharts darstellen
-
Danke für deine Scriptvorlage von dem Blockly Tibber Script.
Ich würde das Script gerne auch für den APG Adapter verwenden, tappe aber etwas im Dunkeln.Könntest du mir etwas helfen wie ich zum Ziel komme ?
Ich habe alle Datenpunkte im Script entsprechend an die Datenpunkte des APG Adapters angepasst.
Im Log erhalte ich folgenden Output:
2024-11-06 00:00:37.390 - info: host.iobroker instance system.adapter.apg-info.0 terminated with code 0 (NO_ERROR) 2024-11-06 00:00:40.822 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: Quelldatensatz: {"graphs":[{"type":"line","color":"gray","line_steppedLine":true,"xAxis_timeFormats":{"hour":"HH"},"xAxis_time_unit":"hour","yAxis_min":0,"yAxis_max":80,"datalabel_show":"auto","datalabel_minDigits":2,"datalabel_maxDigits":2,"xAxis_bounds":"data","line_pointSize":5,"line_PointColor":"rgba(0, 0, 0, 0)","datalabel_fontSize":10,"datalabel_color":"black","line_UseFillColor":true,"data":[{"y":10.582,"t":1730847600000},{"y":9.905,"t":1730851200000},{"y":9.55,"t":1730854800000},{"y":9.754,"t":1730858400000},{"y":10.121,"t":1730862000000},{"y":10.893,"t":1730865600000},{"y":15.554,"t":1730869200000},{"y":27.325,"t":1730872800000},{"y":22.36,"t":1730876400000},{"y":13.483,"t":1730880000000},{"y":12.258,"t":1730883600000},{"y":11.576,"t":1730887200000},{"y":11.1,"t":1730890800000},{"y":12.398,"t":1730894400000},{"y":14.055,"t":1730898000000},{"y":24.654,"t":1730901600000},{"y":46.002,"t":1730905200000},{"y":72.195,"t":1730908800000},{"y":71.407,"t":1730912400000},{"y":40.932,"t":1730916000000},{"y":19.545,"t":1730919600000},{"y":13.184,"t":1730923200000},{"y":11.868,"t":1730926800000},{"y":11.143,"t":1730930400000},{"y":11.143,"t":1730934000000}]}]}, "graphs":[{"type":"line","color":"gray","line_steppedLine":true,"xAxis_timeFormats":{"hour":"HH"},"xAxis_time_unit":"hour","yAxis_min":0,"yAxis_max":80,"datalabel_show":"auto","datalabel_minDigits":2,"datalabel_maxDigits":2,"xAxis_bounds":"data","line_pointSize":5,"line_PointColor":"rgba(0, 0, 0, 0)","datalabel_fontSize":10,"datalabel_color":"black","line_UseFillColor":true,"data":[]}]} 2024-11-06 00:00:40.822 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: Länge des Quelldatensatzes: 1548 2024-11-06 00:00:40.823 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: ] 2024-11-06 00:00:40.892 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: Quelldatensatz: {"graphs":[{"type":"line","color":"gray","line_steppedLine":true,"xAxis_timeFormats":{"hour":"HH"},"xAxis_time_unit":"hour","yAxis_min":0,"yAxis_max":80,"datalabel_show":"auto","datalabel_minDigits":2,"datalabel_maxDigits":2,"xAxis_bounds":"data","line_pointSize":5,"line_PointColor":"rgba(0, 0, 0, 0)","datalabel_fontSize":10,"datalabel_color":"black","line_UseFillColor":true,"data":[{"y":10.582,"t":1730847600000},{"y":9.905,"t":1730851200000},{"y":9.55,"t":1730854800000},{"y":9.754,"t":1730858400000},{"y":10.121,"t":1730862000000},{"y":10.893,"t":1730865600000},{"y":15.554,"t":1730869200000},{"y":27.325,"t":1730872800000},{"y":22.36,"t":1730876400000},{"y":13.483,"t":1730880000000},{"y":12.258,"t":1730883600000},{"y":11.576,"t":1730887200000},{"y":11.1,"t":1730890800000},{"y":12.398,"t":1730894400000},{"y":14.055,"t":1730898000000},{"y":24.654,"t":1730901600000},{"y":46.002,"t":1730905200000},{"y":72.195,"t":1730908800000},{"y":71.407,"t":1730912400000},{"y":40.932,"t":1730916000000},{"y":19.545,"t":1730919600000},{"y":13.184,"t":1730923200000},{"y":11.868,"t":1730926800000},{"y":11.143,"t":1730930400000},{"y":11.143,"t":1730934000000}]}]}, "graphs":[{"type":"line","color":"gray","line_steppedLine":true,"xAxis_timeFormats":{"hour":"HH"},"xAxis_time_unit":"hour","yAxis_min":0,"yAxis_max":80,"datalabel_show":"auto","datalabel_minDigits":2,"datalabel_maxDigits":2,"xAxis_bounds":"data","line_pointSize":5,"line_PointColor":"rgba(0, 0, 0, 0)","datalabel_fontSize":10,"datalabel_color":"black","line_UseFillColor":true,"data":[]}]} 2024-11-06 00:00:40.892 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: Länge des Quelldatensatzes: 1548 2024-11-06 00:00:40.892 - info: javascript.0 (215) script.js.EPEX.Blockly-fuer-eCharts: ]
Die Datenpunkte Mittelwert, Preise und Netzvorgabe schauen aber weniger gut aus:
Ist das soweit korrekt ?
Falls ja, wie kann ich das dann in eCharts darstellen ?Danke.
Beste Grüße
-
@qlink Hallo Qlink,
in meinem Skript wird als Datum für eCharts für jede Stunde nur 1 Datenpaar aus Zeit und cent-Wert abgelegt, also in der Form "{"ts": 1675887847000, "val": 45}". Das kann direkt im ECharts-Adapter eingelesen werden, ohne weiteres Setting (außer natürlich Farbe und Liniendicke etc.) und ohne, dass der Datenpunkt per Zahnrad dem history-Adapter oder ähnlichem hinzugefügt werden muss.
Schicke mir per Chat deine Mailadresse, dann schicke ich dir den letzten Stand des Blockly und die Berechnung der Datenpunkte.
Ich habe auch eine vertikale Linie mit Text ergänzt, deren Position die aktuelle Tageszeit angibt und der Text die aktuelle Uhrzeit und den Preis. Diese Linie bewegt sich dank Binding und Formel in der vis-Positionsabgabe zeitproportional über das Diagramm. -
Du hast mir das Script am 21.10.24 geschickt.
d.h. es gibt schon wieder eine neuere Variante richtig ? -
@qlink Sorry, das hatte ich nicht auf dem Schirm. Dann ist das die letzte Veriante.
-
ist der log output oben denn korrekt ?
-
@qlink Da ich, wie mitgeteilt, nicht mehr bei Tibber bin, kann ich nur bedingt weiterhelfen. Ich erinnere mich, dass in den Tibberdaten die Stundenpreise des aktuellen und des Folgetages in einem JSON-String mit den Objekten 'startsAt' (für die Uhrzeit) und 'total' (für den Preis) abgelegt waren. Diese beiden Objekte filtert mein Skript paarweise heraus und schiebt sie in der oben beschriebenen Art (mit "ts", "val") als Paar in den JSON-String für eCharts.
Wenn dein Skript mit den (mir nicht bekannten) APG-Daten dasselbe macht und letzten Endes also den JSON-String mit den Paaren "ts" und "val" ablegt, sollte es funktionieren.