NEWS
Diagramm mehrerer Datenpunkte ohne History
-
@Negalein sagte in Diagramm mehrerer Datenpunkte ohne History:
@sigi234 sagte in Diagramm mehrerer Datenpunkte ohne History:
Funktioniert nicht bei mir.
Ich hab keinen DP
javascript.0.vis.dasWetterTable
Du brauchst das Skript von @paul53
var path = "daswetter.0.NextDaysDetailed.Location_1."; // 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', unit: '', role: 'value' }); function wetter() { var list = []; for(let i = 0; i < 8; i++) { list[i] = {}; list[i].Zeit = getState(path + 'Day_1.Hour_' + (i + 1) + '.hour_value').val; list[i].Heute = getState(path + 'Day_1.Hour_' + (i + 1) + '.temp_value').val; list[i].Morgen = getState(path + 'Day_2.Hour_' + (i + 1) + '.temp_value').val; list[i].Tag_2 = getState(path + 'Day_3.Hour_' + (i + 1) + '.temp_value').val; list[i].Tag_3 = getState(path + 'Day_4.Hour_' + (i + 1) + '.temp_value').val; list[i].Tag_4 = getState(path + 'Day_5.Hour_' + (i + 1) + '.temp_value').val; } var json = JSON.stringify(list); // log(json); setState(idTable, json, true); } // Trigger schedule('10 */15 * * * *', wetter);
-
-
-
@Negalein sagte:
Wo gehört das im Script von @paul53 eingetragen?
Das Skript liefert nur die Temperaturwerte. Mit °C:
list[i].Heute = getState(path + 'Day_1.Hour_' + (i + 1) + '.temp_value').val + ' °C'; list[i].Morgen = getState(path + 'Day_2.Hour_' + (i + 1) + '.temp_value').val + ' °C'; list[i].Tag_2 = getState(path + 'Day_3.Hour_' + (i + 1) + '.temp_value').val + ' °C'; list[i].Tag_3 = getState(path + 'Day_4.Hour_' + (i + 1) + '.temp_value').val + ' °C'; list[i].Tag_4 = getState(path + 'Day_5.Hour_' + (i + 1) + '.temp_value').val + ' °C';
-
@paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:
@Negalein sagte:
Wo gehört das im Script von @paul53 eingetragen?
Das Skript liefert nur die Temperaturwerte. Mit °C:
Könnte man das auf die anderen Werte noch erweitern?
-
@Negalein sagte:
Könnte man das auf die anderen Werte noch erweitern?
Wie soll die Tabelle dann aussehen ? Oder mehrere Tabellen ?
-
@paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:
@Negalein sagte:
Könnte man das auf die anderen Werte noch erweitern?
Wie soll die Tabelle dann aussehen ? Oder mehrere Tabellen ?
-
@Negalein 40 Zeilen ?
-
@paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:
@Negalein 40 Zeilen ?
So zB hätte ich gedacht
-
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?
-
@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. -
@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);
-
@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
-
@Negalein
Ändere malif(j == 0) list[i].Tag = tage[day];
in
if(j == 0) list[i].Tag = tage[day]; else list[i].Tag = '';
-
@paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:
@Negalein
Ändere malif(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:
Edit:
-
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:
-
-
@paul53 sagte in Diagramm mehrerer Datenpunkte ohne History:
@sigi234 sagte:
Edit:
Passt doch zur Excel-Tabelle von @Negalein.
Ja sag ich eh...........
-
@dtp sagte in Diagramm mehrerer Datenpunkte ohne History:
Eigentlich schwebte mir eher sowas vor:
Mir auch!
Eventuell wird es ja noch was! -