Hallo Community,
Die neue IP-Symcon Version 4.3 ist gerade als Beta herausgekommen und bietet verschiedene neue Features und Verbesserungen. Ich wollte euch in einer Reihe von Beiträgen diese ganzen Features einmal näherbringen und genauer beschreiben. Dabei würde ich sowohl über die neuen Funktionalitäten schreiben, die ihr direkt in eurem Zuhause benutzen könnt. Auf der anderen Seite schreibe ich auch noch ein wenig über die Entwicklung selbst, damit ihr einen kleinen Einblick in unseren Entwickleralltag erhaltet.
In der neuen Version erwarten euch komplett überarbeitete Graphen, eine Reihe von neuen unterstützten Geräten, einige Verbesserungen für PHP-Module und diverse kleinere Anpassungen und Fixes.
Heute möchte ich mit den neuen Graphen anfangen. Seit ich Anfang des Jahres bei Symcon angefangen habe, waren die Graphen mein erstes größeres Projekt und ich bin mit dem aktuellen Ergebnis sehr zufrieden. Schauen wir uns aber einfach mal zwei Bilder an:
Wir sehen zwei Graphen, die denselben Datensatz zeigen. Auf der linken Seite ist dies die alte Implementation und auf der rechten die neue. Es fallen direkt einige Änderungen ins Auge.
Mittlerweile befinden sich die Aggregationspunkte nicht mehr auf den senkrechten Linien, sondern mittig in einem Bereich. Dies soll einfach noch einmal verdeutlichen, dass es sich bei den Punkten nicht um einen genauen Zeitpunkt handelt, sondern um einen Zeitraum. Die Variable für Montag beschreibt beispielsweise den Durchschnitt über den gesamten Montag und nicht den Wert für Montag um 0:00 Uhr.
Die S-Bildung wurde ordentlich reduziert. Das sieht man bei den Graphen besonders schön am rechten Ende. Beim alten Graphen bilden sich S-förmige Wellen während die Linie beim neuen Graphen deutlich weniger ausschlägt.
Wir haben bei uns die Regel, dass die Linie zwischen zwei Punkten nicht über diesen Bereich hinausragen darf. Die Linie darf sich also nie unter dem niedrigeren Punkt und nie über dem höheren Punkt befinden. Zusätzlich soll die Linie keine Kanten beinhalten und darf die Richtung nie abrupt ändern.
Ursprünglich wurde dies durch die S-Linien gelöst. Durch die S-Linien kann die Linie nicht aus dem Bereich herausragen und ist auf den Punkten stets waagerecht. So können wir einfach die ganzen S-Linien aneinanderhängen und haben als Endergebnis einen Graphen der die Bedingungen erfüllt.
Das wurde jetzt gelockert und die Linien müssen in den Punkten nicht mehr waagerecht sein. So müssen wir uns während der Berechnung zwar die Ausrichtung eines Punktes merken und müssen ein paar Überprüfungen und Anpassungen einbauen, damit die Linien nicht ausschlagen. Das Ergebnis ist es aber sicherlich wert und wir haben schöne Graphen.
Als letzten Punkt für heute schauen wir noch einmal auf die Y-Achse mit den Temperaturwerten. Was man nicht sieht: Das verwendete Profil hat einen Minimalwert von 12 und einen Maximalwert von 30. Die Schrittgröße ist 0, es gibt also hier keine feste Vorgabe vom Profil.
Beim alten Graphen sehen wir oben allerdings 32 °C. Das liegt daran, dass die alten Graphen bei einer Schrittgröße von 0 immer fünf Y-Werte verwenden. Dies würde bei einem Spektrum von 12 bis 30 °C eine Schrittgröße von 4,5 bedeuten. Das würde nun wirklich nicht schön aussehen, daher wird die Schrittgröße auf 5 aufgerundet. Bei vier Schritten kommen wir daher bei 32 °C an.
In der neuen Version wird auf jeden Fall der gewünschte Maximalwert oben stehen. Wir versuchen eine schöne Schrittgröße zu bestimmen, so dass der Graph eine angenehme Menge an Datenpunkten hat. Und selbst wenn das Spektrum nicht schön aufgeteilt werden kann und wir beispielsweise im Watt-Profil ein Spektrum von 0 bis 3680 haben, dann bekommen wir das hin. In dem Falle nehmen wir eine Schrittgröße von 500. Auch wenn 3680 kein Vielfaches von 500 ist, so kommt das Maximum einfach nach 3500. Dadurch ist der Abstand von 3500 zum Maximum natürlich niedriger als der übliche Abstand zwischen zwei Punkten, aber wir haben trotz krummen Maximum einen schönen übersichtlichen Graphen.
Das soll es für heute über Graphen gewesen sein. Fühlt euch herzlich eingeladen die neuen Features hier zu diskutieren und verratet uns, was ihr davon haltet. In ein oder zwei Wochen kommt ein neuer Beitrag von mir, in dem ich auf andere Aspekte von IP-Symcon 4.3 und deren Entwicklung eingehe. Ihr dürft euch hier auch gerne Themen wünschen und ich schaue dann worüber ich schreibe.
Bis zum nächsten Mal
Dr. Niels