Ich wollte ein Skript für einen Multigraph erstellen ohne viel Einstellungen vornehmen zu müssen.
Raus kann MultiGraph für GoogleChart.
Das Skript erzeugt einen Graphen mit max. 4 Linien.
Als Datenbank werden die IPS geloggten Variablen verwendet.
Die beide Skripte in IPS laden.
In GoogleChart werden die Einstellungen vorgenommen.
Sollte eigentlich selbst erklärend sein.
Bitte keine Sonderzeichen verwenden.
Skript GoogleChart starten.
Im Ordner C:IP-Symcon/Media sollte der erzeugt Graph zu finden sein.
Einfach einmal probieren.
Ich hoffe es läuft ohne Probleme.
Das mit der Konfiguration ist natürlich etwas umständlich, aber wenn man bedenkt dass man damit eine weitere DB a la DUG Tool ausschliessen kann und die vorhandenen Daten des IPS nutzt muss ich sagen das dies sicherlich ein Ansatz sein könnte das Multigraphenthema schneller zu erlangen.
Vor allen Dingen wenn man sich an die Probleme erinnert die das DUG Tool gerne mal in Bezug auf die Speicherlast machen kann…
Danke für diese Basis…das werde ich mir mal etwas genauer anschauen…
Ein Piechart für z.B.den Gasverbrauch zwischen 0-8, 8-16 und 16-0 Uhr wäre doch mal ne Idee…ähnliches für Regenmengenvergleiche, usw…
Würde mich wundern wenn das nicht zu einem Feature&Function Contest werden könnte…weil Multigraph halt eines der Wunschthemen von vielen ist…
Als erste Verbesserungsidee würde mir spontan einfallen, dass man das „hardcodiert“ eingetragene Variablennummern im GoogleGraph Script nicht nötig sind. Das würde die ganze Sache der Konfiguration wesentlich flexibler machen.
Sprich:
Man ersetzt im ARRAY die ID Zahlen durch zu befüllende Variablen die man eventuell aus einer Liste zieht die sämtliche Variablen aus dem Logging/Archive Handler des IPS enthält und durch ein bestimmtes Flag (eventuell eine gleiche Zahl für einen entsprechenden anzulegenden Graphen) für einen bestimmten Graphen „aktiviert“. Für einen weiteren Graphen dann die nächsthöhere Zahl, usw…
Dann wäre doch das GoogleGraph Script nur einmal vorzuhalten und würde dann fleissig für die Erstellung der jeweiligen Bilder genutzt werden können während die [1] Varibalen von 1-n hochgezählt werden (s.u.).
Klar…das mit der Graphenbeschriftung und dem Dateinamen ist noch so eine Sache, aber auch dies könnte in der Source Datei der Variablen mit eingeben werden…und bei Aufruf über die Führungskennziffer mit selektiert werden…
Im DUG Tool ist es ja auch so das man alle Variablen sehen kann, die die man haben will mitloggt und den Rest einfach unbeachtet lässt.
So in etwa von der Logik her:
Variablenselektion für Graphen:
[1] „Temperatur Wohnzimmer“
[2] Luftfeuchte Wohnzimmer
[1] Temperatur Kinderzimmer
[2] Luftfeuchte Kinderzimmer
Temperatur Aussen
[1] Temperatur Keller
[1] Temperatur Gästebad
…usw…
Titelselektion Graphen:
[1] Temperaturverlauf
[2] Luftfeuchteverlauf
[3] Energieverbrauch
…usw…
Linienbezeichnung:
Variable 1: Text Variable 1 „Temperatur Wohnzimmer“
Variable 2: Text Variable 2 „Temperatur Kinderzimmer“
…usw…
Jetzt müsste nur eine Abfrage diese Infos zyklisch durchlaufen…die Daten aus dem Logging ziehen, Bild bauen, dieses ablegen, Zähler um +1 erhöhen und wieder durchlaufen…
Ist das nachvollziehbar ?
Habe ich da einen Denkfehler ?
Bernado71
deine Vorschläge lasse ich mir durch den Kopf gehen:rolleyes:
Graphische Oberfläche für die Erstellung der Graphen!!
Ich will das Skript so einfach halten wie möglich.
Eine Möglichkeit wäre ein Konfig-Skript, das man aufruft.
ChristianS
ist im Arbeit für y- und x-Achse
Ich beziehe die Werte aus den Variablen, aber halt min. und max. aus allen,
oder verstehe ich Deine Frage falsch.
Zeige mal bei einem Graphen was Du meinst.
Ich denke so LEAN wie möglich ist der beste Ansatz.
Ein Script ist dann sicherlich nicht die schlechteste Idee…
Eine grafische Oberfläche hatte ich gar nicht im Sinn.
Einfach nur etwas, was an einer zentralen Stelle die Konfiguration machen lässt und dann bei Aufruf des Graphen Scriptes die jeweilige Anzahl von Graphen erstellt. Dafür müsste man doch die Erstellunglogik auch mittels eines Indexes replizieren können, oder ?
Sprich eine Logik für den Fall 1, 2, 3…dann würde ein Durchlauf alles gleich neu erstellen und nicht immer wieder aufgerufen werden müssen…
Dies dann einfach stündlich / täglich machen lassen und man hat schon mal eine sehr gute Basis…die 70-80% der Auswertungen abbildet.
Klar wären andere Visualisierungen, wie z.B. Piecharts, auch ganz witzig in Bezug auf Verbrauchsauswretungen…aber nun mal langsam mit den jungen Pferden…
Cool ist auf jeden Fall das die Datenbasis die gleiche ist und keine weitere DB vollgeschrieben wird…
beim Webfront is es ja so:
zb Tagesansicht… y-achse zb. von 20-23°C … wechselt man auf den vorigen tag kann die y-achse zb. von 18-20°C haben… zwecks der Vergleichbarkeit wäre hier aber immer eine gleiche y-achse besser.
Diagramme müsst ich erst welche machen, falls die noch gebraucht werden g
Genau das wollte ich nicht.
Der min und max Werte wird immer aus den Zeitraum genommen, welche dargestellt wird.
z.B. Außentemperatur im Sommer +30°C im Winter -30°C.
Warum soll ich bei einem Wochengraph im Sommer als min. Wert -30 haben?
Es ist bestimmt noch etwas Feineinstellung möglich bei min und max.
bei mir ist ab und zu die Datei leer (Größe 1,4 kB). Wenn ich den Google-Link im Browser aufrufe, erhalte ich aber einen richtigen Graphen im Browser angezeigt.
Ja, genau das Problem habe ich auch. obwohl, ich bekomme eine Datei mit der Endung .png, die allerdings php Fehlermeldungen enthält.
Und wie liegt man den Zeitraum fest, den man als Grafik aufbereitet haben möchte (z.b. bei Tagesgraphen möchte ich den 30.11.2010 untersuchen).