ich habe einen Rasenmähroboter in IPS eingebunden. Dieser hat verschiedene Zustände wie „mäht“, „lädt“, „pausiert“, „Fehler“ etc. Diese sind in einer Integervariable mit Werten von von 0 bis n dargestellt. Was ich jetzt gerne hätte ist einen Möglichkeit diese Variable als (Zeit-)Balken mit verschiedenen Farben darzustellen, also von Mitternacht bis Mitternacht, z.B. grün, wenn er mäht, blau wenn er lädt, rot wenn er einen Fehler hat, etc…
Git es einen Möglichkeit das mit Bordmitteln zu erreichen oder hat jemand schon mal sowas programmiert? Ideal wäre es den Integer Wert in einzelne Boolean Variablen umzuwandeln für „Laden (true/false)“, „Mähen (true/false)“, etc und diese dann als Booleans mit verschiedenen Farben in einem Graphen darzustellen. Leider geht aber die Boolean Darstellung nur untereinander und (im Gegensatz z.B. zu Integervariablen) nicht übereinander geplottet.
Andere Sachen die mir einfallen ist eine HTML Tabelle zu generieren das scheint mir kompliziert und man hat vor allem dann nicht das nette Feature, das man in den Graphen auf vorherige Tage „zurückblättern“ kann. Hat da jemand eine Idee, bzw, was spricht dagegen Booleans (wie andere Variablen auch) „übereinander“ plotten zu können?
Wenn du meherere Booleans „übereinander“ plotten würdest, so würde ja immer eine alle anderen überdecken. Gibt ja nur 0/1.
Eine Lösung wäre Integer daraus zu machen und zu jeder Variable einen individuellen Offset addieren. Sie damit also entlang der X Achse verschieben.
Ich arbeite mit Highcharts da sieht das dann so aus:
Dargestellt wird der On/Off Status von Magnetventilen bzw. Sensoren des Aquariumwasserwechsels.
Die booleans würden sich nicht überdecken, denn es ist ja immer nur einer der Zustände true (wenn er mäht, lädt er nicht, gibt es keinen Fehler, etc).
Sowie Du es in Highcharts vorschlägst ist es eben in meinem Fall (wo immer nur ein Zustand vorliegen kann) „Platzverschwendung“. Ein Balken der die Farbe wechselt (je nach Zustand) wäre da geeigneter.
Mache ich mich verständlich?
Gruss
gros_ibou
PS: Als Anhang ein Beispiel. Das hätte ich eben gerne in einen Balken komprimiert
Dein aktuelles Beispiel ist aktuell die beste Darstellungsmöglichkeit. Du kannst noch ein Profil bauen, welches bei True/False ein Leerzeichen drin hat. Dann sieht die Legende auch besser aus.
Wenn du eine Integer Variable nimmst, kannst du im RAW Modul natürlich auch genau sehen, welcher Zustand anlag. Dies geht jedoch nicht als Balken, da diese nur in den festen Zeiträumen verfügbar sind und nicht im RAW Modus laufen.