NEWS
Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com)
-
Hallo,
jahrelang hatte ich in FHEM ein Wetterdiagramm mit Icons über das FTUI Widget Chart – FHEMWiki im Einsatz.
Nach dem Wechsel zu ioBroker fand ich keine vergleichbare Möglichkeit, ein solches Diagramm mit Icons darzustellen. Mit Hilfe von ChatGPT habe ich schließlich eine funktionierende Lösung entwickelt.Hier ist das Ergebnis.


Voraussetzungen und Setup
1. Aktive ioBroker-API
Am einfachsten über den Adapter „Simple API“.2. Wetterdatenquelle
Die Daten stammen aus dem „Wetter.com“-Adapter.
Dieser kann zusätzlich über GitHub installiert werden.
Danke an eifel-tech für den Adapter.
3. JScript zur Aufbereitung der Wetterdaten
Dieses Script schreibt die Daten des Wetter.com-Adapters in einen Datenpunkt im JSON-Format.-
Im oberen Teil des Scripts können grundlegende Parameter angepasst werden (z. B. IP-Adresse und Port des ioBroker).
-
Diese Angaben sind notwendig, damit die Icons korrekt geladen werden.
-
Die Icons selbst werden mit dem Wetter.com-Adapter installiert.
-
Das Script erzeugt den Datenpunkt: 0_userdata.0.wetter.chartdata, in dem die Daten für das Chart abgelegt werden.
Hier der Script-Code.
4. Chart.js lokal bereitstellen
Für die Darstellung wird Chart.js (chart.umd.min.js) benötigt:
cdn.jsdelivr.net/npm/chart.js@4.5.1/dist/chart.umd.min.js
Die Datei sollte lokal unter/vis.0/www/gespeichert werden (z. B. neben weatherchart.html).
Bei mir funktionierte das Laden nur zuverlässig, wenn die Datei lokal vorlag.5. HTML-Seite für das Diagramm
Die HTML-Datei wird idealerweise unter /vis.0/www/weatherchart.html abgelegt.Hier der HTML-Code.
-
In der HTML-Datei muss die SIMPLE_API_BASE angepasst werden.
-
Falls der Datenpunkt im Script geändert wurde, muss auch DP_ID entsprechend angepasst werden.
6. Einbindung in VIS
In VIS eine neue View anlegen, ein Basic iFrame einfügen und bei Quelle folgendes eintragen:/vis.0/www/weatherchart.htmlIch hoffe ich habe nichts vergessen.
Gruß Tino -
-
Hallo,
jahrelang hatte ich in FHEM ein Wetterdiagramm mit Icons über das FTUI Widget Chart – FHEMWiki im Einsatz.
Nach dem Wechsel zu ioBroker fand ich keine vergleichbare Möglichkeit, ein solches Diagramm mit Icons darzustellen. Mit Hilfe von ChatGPT habe ich schließlich eine funktionierende Lösung entwickelt.Hier ist das Ergebnis.


Voraussetzungen und Setup
1. Aktive ioBroker-API
Am einfachsten über den Adapter „Simple API“.2. Wetterdatenquelle
Die Daten stammen aus dem „Wetter.com“-Adapter.
Dieser kann zusätzlich über GitHub installiert werden.
Danke an eifel-tech für den Adapter.
3. JScript zur Aufbereitung der Wetterdaten
Dieses Script schreibt die Daten des Wetter.com-Adapters in einen Datenpunkt im JSON-Format.-
Im oberen Teil des Scripts können grundlegende Parameter angepasst werden (z. B. IP-Adresse und Port des ioBroker).
-
Diese Angaben sind notwendig, damit die Icons korrekt geladen werden.
-
Die Icons selbst werden mit dem Wetter.com-Adapter installiert.
-
Das Script erzeugt den Datenpunkt: 0_userdata.0.wetter.chartdata, in dem die Daten für das Chart abgelegt werden.
Hier der Script-Code.
4. Chart.js lokal bereitstellen
Für die Darstellung wird Chart.js (chart.umd.min.js) benötigt:
cdn.jsdelivr.net/npm/chart.js@4.5.1/dist/chart.umd.min.js
Die Datei sollte lokal unter/vis.0/www/gespeichert werden (z. B. neben weatherchart.html).
Bei mir funktionierte das Laden nur zuverlässig, wenn die Datei lokal vorlag.5. HTML-Seite für das Diagramm
Die HTML-Datei wird idealerweise unter /vis.0/www/weatherchart.html abgelegt.Hier der HTML-Code.
-
In der HTML-Datei muss die SIMPLE_API_BASE angepasst werden.
-
Falls der Datenpunkt im Script geändert wurde, muss auch DP_ID entsprechend angepasst werden.
6. Einbindung in VIS
In VIS eine neue View anlegen, ein Basic iFrame einfügen und bei Quelle folgendes eintragen:/vis.0/www/weatherchart.htmlIch hoffe ich habe nichts vergessen.
Gruß TinoHi,
vielen Dank das du deinen Skript hier zu Verfügung stellst. So eine Ansicht habe ich für meine VIS geplant und du ersparst mir dann doch einiges an Arbeit.
Habe den Skript bei mir angelegt, bekomme jedoch die Meldungen das die Wetterdaten nicht gefunden wurden. Von daher habe ich zu den Basiseinstellungen Frage.
@Tino-0 sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
// Basis-Pfad Wettercom
const BASE = 'wettercom.0.Day_';// Icon-Pfad
const ICON_BASE = "http://192.168.16.10:8082";Woher kommen die Basisdaten? Du hast dort den Pfad "Wettercom.0.Day_" angegeben. Wie ich es sehe beziehst du die Daten aus dem Adapter "Wetter.com". Der Pfad ist bei mir jedoch "daswetter.0.....". Muss ich eventuell an meinem Adaptereinstellungen etwas anpassen?
Die Icon werden mit dem Wetter Adapter installiert. Muss ich dort als Pfad den Port vom ioBroker angeben oder von der VIS?
-
-
Hi,
vielen Dank das du deinen Skript hier zu Verfügung stellst. So eine Ansicht habe ich für meine VIS geplant und du ersparst mir dann doch einiges an Arbeit.
Habe den Skript bei mir angelegt, bekomme jedoch die Meldungen das die Wetterdaten nicht gefunden wurden. Von daher habe ich zu den Basiseinstellungen Frage.
@Tino-0 sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
// Basis-Pfad Wettercom
const BASE = 'wettercom.0.Day_';// Icon-Pfad
const ICON_BASE = "http://192.168.16.10:8082";Woher kommen die Basisdaten? Du hast dort den Pfad "Wettercom.0.Day_" angegeben. Wie ich es sehe beziehst du die Daten aus dem Adapter "Wetter.com". Der Pfad ist bei mir jedoch "daswetter.0.....". Muss ich eventuell an meinem Adaptereinstellungen etwas anpassen?
Die Icon werden mit dem Wetter Adapter installiert. Muss ich dort als Pfad den Port vom ioBroker angeben oder von der VIS?
@claus1993
Hallo, ich habe kein daswetter.com da es keine neuen API Zugänge gibt, das ganze ist auf dem neuen Adapter wetter.com ausgelegt. Was alles für daswetter.com angepasst werden muss kann ich nicht sagen.Der Icon-Pfad ist die IP-Adresse und Port deines ioBroker.
Gruß Tino
-
Hallo Tino,
Danke schon mal für deine Rückmeldung.
Mir ist nicht ganz klar welchen Adapter du nutzt. Dein Link für wetter.com verweist auf die Internetseite von Wetter.com.
Laut Google kann ich nur den folgenden Adapter finden, https://github.com/eifel-tech/ioBroker.wettercom.
Ist das der von dir genutzte Adapter?Grüße, Claus
-
Hallo Tino,
Danke schon mal für deine Rückmeldung.
Mir ist nicht ganz klar welchen Adapter du nutzt. Dein Link für wetter.com verweist auf die Internetseite von Wetter.com.
Laut Google kann ich nur den folgenden Adapter finden, https://github.com/eifel-tech/ioBroker.wettercom.
Ist das der von dir genutzte Adapter?Grüße, Claus
@claus1993
Moin Claus,
ja das ist der Adapter, den kann man auch über den Expertenmodus installieren.
PS: Dazu brauchst du noch den API Key "Light Air"
Gruß Tino
-
sieht echt super aus, wie wäre es unter der VIS-2?
Und wie passte die Hmtl Datei die Api an? Wo müsste ich da was einragen.
-
Irgendwas stimmt da nicht mit dem Datum, nur komme ich nicht dahinter

An was könnte es liegen? -
Irgendwas stimmt da nicht mit dem Datum, nur komme ich nicht dahinter

An was könnte es liegen? -
Was Nashra geschrieben hat, ist bei mir auch wenn ich das öffnen mi Wert schreiben. Da steht das Datum auch so.
hier der Inhalt des Datenpunkt.
{"labels":[["undefined - 12/9/2025.undefined"],["undefined - 12/10/2025.undefined"],["undefined - 12/11/2025.undefined"],["undefined - 12/12/2025.undefined"],["undefined - 12/13/2025.undefined"]],"datasets":[{"label":"Regen","data":[3.5,0.6,0,0,0.7]},{"label":"Neuschnee","data":[0,0,0,0,0]},{"label":"Max Temperatur","data":[12,11,10,7,7],"pointStyle":["http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_60.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_0.svg"]},{"label":"Min Temperatur","data":[10,8,7,2,1]}]} -
Was Nashra geschrieben hat, ist bei mir auch wenn ich das öffnen mi Wert schreiben. Da steht das Datum auch so.
hier der Inhalt des Datenpunkt.
{"labels":[["undefined - 12/9/2025.undefined"],["undefined - 12/10/2025.undefined"],["undefined - 12/11/2025.undefined"],["undefined - 12/12/2025.undefined"],["undefined - 12/13/2025.undefined"]],"datasets":[{"label":"Regen","data":[3.5,0.6,0,0,0.7]},{"label":"Neuschnee","data":[0,0,0,0,0]},{"label":"Max Temperatur","data":[12,11,10,7,7],"pointStyle":["http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_60.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_3.svg","http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_0.svg"]},{"label":"Min Temperatur","data":[10,8,7,2,1]}]}@Longbow sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
-
http://192.168.7.249:8082/adapter/wettercom/icons/weather/svg/d_60.svg
kannst du das aufrufen, kommt da ein Icon? -
in der HTML hast du da den Port von Simple AIP drin? Sollte default 8087 sein also
bei dir 'http://192.168.7.249:8087/get/' dann sollte bei dir unter http://192.168.7.249:8087/get/0_userdata.0.wetter.chartdata der json auftauchen. -
Das Datum sind die Systemsettings unter

Gruß Tino
-
-
Hab dir mal von den links Bildausdrücke gemacht.
Vielleicht kannst du di dann ein bild machen....

Im übigen finde ich deine Seite mit den ganzen Daten sehr schön übersichtlich, vllt könntest du Sie uns mal bereitstellen.
Danke im übrigen sehr für deine Bemühungen.
-
@Tino-0 sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
Hallo, was steht bei dir in dem Datenpunkt 0_userdata.0.wetter.chartdata drin?

Das selbe wie @longbow schon als Bild eingestellt hat s.o.
und da drin wettercom.0.Day_01.date so? 9.12.2025
Ja, Datum ist so drin
wenn nicht dann stimmt wohl das hier nicht

Nö, da ist allles sauber, Angaben stimmen.
-
@Tino-0 sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
Hallo, was steht bei dir in dem Datenpunkt 0_userdata.0.wetter.chartdata drin?

Das selbe wie @longbow schon als Bild eingestellt hat s.o.
und da drin wettercom.0.Day_01.date so? 9.12.2025
Ja, Datum ist so drin
wenn nicht dann stimmt wohl das hier nicht

Nö, da ist allles sauber, Angaben stimmen.
-
@Tino-0 sagte in Wetterdiagramm mit Icons in VIS (Chart.js + Wetter.com):
Hallo, was steht bei dir in dem Datenpunkt 0_userdata.0.wetter.chartdata drin?

Das selbe wie @longbow schon als Bild eingestellt hat s.o.
und da drin wettercom.0.Day_01.date so? 9.12.2025
Ja, Datum ist so drin
wenn nicht dann stimmt wohl das hier nicht

Nö, da ist allles sauber, Angaben stimmen.
ich habe es mal getestet bei euch warum auch immer steht das Datum mit / drin

wenn ich ein Datum so ändere kommt genau euerm Format in den Json

ihr könnt jetzt die Zeile 39 im JScript
von
const parts = dateStr.split("."); // ["28","11","2025"]in
const parts = dateStr.split("/"); // ["28","11","2025"]ändern, dann sollte es passen.
Gruß Tino



