mein Projekt: SQLite DUG Tool

Hallo Tobias,

bei mir bis auf einen Hinweis einer leeren SQlite-Abfrage OK.

Des Weiteren sind bei fast allen Graphen die NULL-Linie verschoben.

Wetter_2.png

Hallo Werner,

das kannst Du hier ändern.

$graph->yaxis->scale->SetGrace(10,10);

die ,10 rausnehmen.

Hallo Obi,

Danach ist mir aufgefallen, das Variablen, die ich in der Zwischenzeit verschoben hatte, in der Liste noch am alten Ort stehen. Wie kann ich den am einfachsten mal die Variablen-Liste neu anlegen lassen?

Browser mal refrechen, funktioniert hier einwandfrei.

Bei mir eben nicht. Bis eben wurden auch beide Skripte, nach dem Update, im IPS als Fehlerhaft markiert. Habe nun mal die graphenbasis.php mit ins IPS Skriptverzeichnis kopiert. war scheinbar auch noch die ältere Version drin. Trotzdem wird meine Variable „Wohnungstür“ weiterhin mit dem namen „.HIDDEN\Wohnungstür“ angezeigt, obwohl es „.HIDDEN…“ bei mir gar nicht mehr gibt und sie nun mit dem Namen „.VARIABLE\Wohnungstür“ angezeigt werden müsste. :confused:

Noch eine Frage: Wo findet man die Zeile

$graph->yaxis->scale->SetGrace(10,10);

und wie kann ich es umgehen, das bei Multigraphen, mit zwei Werten unterschiedlicher Einheiten, nur eine Einheit von einem Graphen verwendet wird? Beispiel ist mein Raum- bzw. Außenklima. Das besteht aus Temp. und Feuchte. Bei dem Raum-Diagramm steht im Klima-Diagramm „°C“ und bei dem 2. Klima-Diagramm „%rel. Feuchte“ als Einheit. Könnte man nicht eine Möglichkeit einbauen, bei Multigraphen angezeigte die Einheit zu ändern?

Hallo zusammen,

Es sind immer diese Kleinigkeiten, die man übersieht. Natürlich muss die graphenbasis.php auch in das IPS Script verzeichnis kopiert werden. Hab das im Update koirrgiert. Alle die das update schon durchgeführt haben müssen die Datei halt manuell kopieren.
Das die Graphen nicht mehr auf der Nulllinie liegen (das Problem mit SetGrace(10,10)), war ein Versuch von mir bei Multigraphen Linien, die sehr weit unten gezeichnet werden anzuheben. Das hab ich wieder raus genommen, da es blöd aussieht. muss mir da mal was anderes Einfallen lassen.

Danach ist mir aufgefallen, das Variablen, die ich in der Zwischenzeit verschoben hatte, in der Liste noch am alten Ort stehen. Wie kann ich den am einfachsten mal die Variablen-Liste neu anlegen lassen?

Die Namen der Variablen werden in der Datenbank gespeichert und dann nicht mehr aktualisiert. Das ist deswegen so, weil ich ja nicht weiß, ob jemand im DUG Tool einer variable einen eigenen Namen gegeben hat. Verschiebt er diese Variable in IPS und das DUG Tool würde es auch in der DB aktuallisieren, so wäre der selbstvergebene Name weg.
Ich schreib gleich mal ein paar Zeile, um unter „Variable bearbeiten“ die orig. IPS Bezeichnung übernehmen zu können.

wie kann ich es umgehen, das bei Multigraphen, mit zwei Werten unterschiedlicher Einheiten, nur eine Einheit von einem Graphen verwendet wird?

Da ich jetzt alle geplanten Features eingebaut habe wende ich mich jetzt der Graphendarstellung zu. Ich hab mir das so gedacht, dass bei zwei unterschiedlichen Einheiten natürlich auch zwei y-Skalen angezeigt werden.
Das kommt also noch. Nur ein bissel Geduld :slight_smile:

Gruß Tobias

Hallo Tobias,

also ich hab mir nun mal die 1.2b drauf gemacht. Update.php ging leider nicht, habe also die 3 Skripte von hand in den Skripts Ordner von IPS kopiert und natürlich den neuen DUGTool Ordner in das Webfront Verzeichnis. War das so ok? Zu der Beschriftung der Multigraphen: Eine 2. Y-Achse ist gar nicht nötig. Ich fände es ausreichend, wenn man die angezeigte Einheit halt einfach nur selber setzen könnte.

P.S: was mir noch „negativ“ aufgefallen ist, sind die arg krummen Zeitwerte auf der X-Achse. Könnte man die nicht gerade ziehen, also auf glatte Stunden oder wenigsten 15 Minuten Werte? Bei mir addieren sich die Werte immer um 1h12min. und das ist dann sehr krumm. (00:22 - 01:34 - 2:46 - usw.)

Ja, genau so war es gedacht :slight_smile:

OK, ich werd mal schauen, was ich da zaubern kann.

Ja, das empfinde ich auch als störend. Dieses Detail gehört zu meinem Todo-Punkt „Graphenskalierung“ überarbeiten und ist für die nächsten Tage angedacht. Ich hab mir überlegt, dass die X-Achsenbeschriftung in festen Schritten durchgeführt wird. Also z.b. alle 5 Minuten, oder jede Stunde usw. je nachdem wie groß man seinen Graphen erstellt.

Ich sehe ich hab noch ein bisschen was zu tun. :smiley:

kommt aber alles, wie gewünscht.
Gruß Tobias

Bleibt nur noch die eine Frage offen, wo finde ich den nun die Zeile :confused:->

$graph->yaxis->scale->SetGrace(10,10);

Laut Tobias hat er es geändert. Ansonsten unter graphenbasis.php. Zeilennummer kann ich dir nicht sagen, da meins anderst aussieht.

Hallo Obi,

als Alternative zum Multigraphen, kannst Du dir das ja mal anschauen. Die Einheiten werden automatisch, sofern vorhanden an die Legende angehangen.

Bei Singlegraph erscheint die Einheit wie gehabt zusätzlich oben links.

Fertig. Die X Achse wird nun in einheitlichen Schritten dargestellt. Zwar gefällt mir der Abstand zwischen den einzelnen Schritten noch nicht wirklich, aber wer will kann ja in Zeile 33 der graphenbasis.php etwas rumspielen und nen guten Wert herausknobeln. :slight_smile: Was noch fehlt sind Zwischenschritte. Aber diese Kleinigkeit kommt auch noch.

Das ist jetzt auch veränderbar. Unter Verwaltung -> Die Variablen, die aktualisiert werden sollen, auswählen -> Variablen bearbeiten -> IPS Namen zuweisen.

So weit so gut. Ich bin für heute fertig und häng mich hintern Fernseher.
Einen schönen Abend noch zusammen. :slight_smile:
Gruß Tobias

@Tobias
Erst mal vielen dank für deine schnelle Anpassung. Mir sind noch zwei Dinge aufgefallen:

1.) Die Hilfslinien für die X-Achse (Zeit) könnten ruhig regelmässiger sein, also bei einer 24h Ansicht nicht im 2h Abstand , sondern im Stundenabstand. Das würde die Ablesbarkeit der Zeiten vereinfachen.

2.) In der Legende fehlt mir eigentlich der aktuelle Wert, zusätzlich zum Min., Max und Avg.

@RWN
wie machst du das mit der Multi-Alternative? Das würde mir natürlich auch reichen, das einfach die Einheit oben weggelassen wird und nur über die Legende sichtbar ist. (Legende ist ja schon da)
Gibt es eigentlich eine „neuere Version“ deines Graphen-Popups? (js_popup.js)

Mir gefällt eigentlich das Graphen Popup (WIIPS Diagramme in IPS) super, weiß nur nicht wie ein Aufruf in der graph.php (also eigene Seite unter …/user) aussehen müsste, um die DUGTool Diagramme so angezeigt zu bekommen, wie ein WIIPS Diagramm in IPS. Hast du dazu eine Idee? Ich vermute ja, das IPS dafür die …/data/imgpage.php nutzt, kenne aber nicht den Syntax für einen korrekten Aufruf aus der graph.php.

Der Trick mit der X-Achsen Beschriftung ist der, dass diese nicht „fest“ vorgegeben ist. Sie hängt vom darzustellenden Intervall und der Breite des Diagramms ab. Wenn du also einen Graphen mit 600 Px breite hast und ein Intervall von 24 Stunden, so wird beispielsweise die X-Beschriftung in 2 Stundenschritten angezeigt. Änderst du die Breit auf 1000 Px bei gleichem Intervall werden 1 Stundenschritte gezeichnet. Aktuell ist es so, dass etwa alle 100 Px eine Beschriftung kommen soll. Wie im letzten Post von mir beschrieben hab ich den Wert einfach mal so Pi mal Daumen gewählt. Das geht bestimmt noch besser.

ja stimmt, das werd ich noch hinzufügen

In der aktuellen Version V1.3 findest du die Einträge in der graphenbasis.php. Die Einheit wird für jede Variable individuell abgefagt und gesetzt in Zeile 330. Die Legende wird in den Zeilen 319 und 323 angelegt. Letztendlich in das nur kopieren&einfügen.

Gruß Tobias

Hier ist es aber ruhig geworden … ist das die Stille vor dem Sturm oder seit ihr am „dauergrillen“?

:slight_smile: Ja, stimmt, ich hab wirklich lange nichts mehr geschrieben.

Ich war diese Woche beschäftigt (unter anderem mit einem Besuch auf der Hannovermesse) und hab daher keine Zeit gefunden die Version 1.4 fertig zu stellen.
Es sind ein paar Veränderungen dazu gekommen, die dazu führen, dass man auch ohne PHP Wissen (also ohne am Sourcecode zu arbeiten) das Aussehen des Graphen verändern kann.
Ich geh davon aus, dass die neue Version 1.4 dieses Wochenende raus kommen wird. Ich werde heute wohl noch die Änderungen von Rainer einarbeiten und dann morgen die neue Version hochladen.

Dann ist es hier auch nicht mehr so ruhig :slight_smile:
Gruß Tobias

So, es ist soweit. Ich habe die Version 1.4 fertig gestellt. Wie immer hoffe ich alle Bugs gefunden zu haben, aber ich garantiere für nichts :smiley:

Die Tests liefen bei mir gut, also sollte es auch alles bei euch laufen. Hier noch einge Anmerkungen:
Da ich mitbekommen habe, dass viele die DUG Tool Diagramme in WebFront nutzen und dafür Rainers Veränderungen nutzen habe ich diese natürlich in die aktuelle Version mit übernommen.
Das Design des Graphen ist nun anpassbar. Es wird über eine Konfigurationsdatei beeinflusst. Welche Datei benutzt werden soll, kann man in den Einstellungen ändern. Für das Standarddesign trägt man die Daten GraphenKonfiguration_std.php ein. Für Rainers WebFront Desgin die Datei GraphenKonfiguration_WebFront.php. Ich hoffe, dass es somit einfacher wird verschiedene Designvorschläge untereinander auszutauschen.
Als zweite wichtige Änderung hat das DUG Tool jetzt eine eigene IPS Kategorie bekommen, in der die Scripte und die neu erstellten Diagramme abgelegt werden. Auch dieses kann man aber in des Einstellungen deaktivieren.
Die dritte wichtige Änderung betrifft die Dateistruktur. Die php Datei graphenbasis.php, die für das erstellen der Graphen verantwortlich ist, gibt es jetzt nur noch EIN Mal, im DUG Tool Verzeichnis. Somit entfällt das ständige hin und her kopieren bei Updates oder eigenen Änderungen.

So, das war in kürze das Wichtigste.
Freue mich auf eure Kommentare.
Gruß Tobias

P.S. @ Rainer: Deine Bargraphen haben es noch nicht in diese Version geschafft, da ich diese wohl als extra Graphentypen einbauen werde und somit größere Änderungen notwendig werden. Das ist dann der Version 1.5 vorbehalten.

Hallo Tobias,

saubere Arbeit. Danke. Alles drin was wir uns gewünscht haben.

Kleine Tippfehler in der graphenbasis.php, Zeile 416

Ist: $nullinie->SetColor($FARBEEXTRANULLLINIE);
Soll: $nullline->SetColor($FARBEEXTRANULLLINIE);

Hallo Tobias,

ich habe schon alle möglichen Foren zum Thema jpGraph durchsucht um die Legende ein wenig schöner zu formatieren.

Im Moment stehen ja alle Werte direkt nebeneinander, gibt es vielleicht eine Möglichkeit die Legende in einer Tabellenform anzuordnen so das die Werte (Variable, Max, Min, Avg und Aktuell jeweils untereinander stehen.

Hallo Werner,

gibt es, allerdings reicht dir dann dein Monitor bei mehreren Graphen nicht mehr aus. :smiley:

Hallo Tobias,

super Arbeit!