Multi-Graph erstellen

Hi,

ich fände es auch schön wenn man sich den graphen widmen würde. Highcharts hin oder her, das ding ist Horrormäßig einzurichten (und ja, bei mir läuft es) und ich meine nicht nur die includes sondern generell mit Variablen zu füllen, die Anzeigen einzurichten und irgendwie anzeigen zu lassen.

Das einarbeiten ist ja nicht alleine das problem, aber mach mal 3-4 Monate nichts dran, dann fängst du mit dem abarebiten wieder von vorne an.

Viele Grüße

Liebe IPS-User,

jetzt habe ich mir mal die Zeit genommen und versucht, Highcharts zum laufen zu bekommen.

  1. Dank der Hilfe von Boui hab ich jetzt auch einige Knoten lösen können und verstanden, wie zumindest mal die vorbereitenden Maßnahmen zu erledigen sind… :-). Life can be so easy…
  2. Habe die im o.g. Threat verlinkte Datei Highcharts_V3.00.rar verwendet (Highcharts - Multigraph)
  3. Das Config-File habe ich nach bestem Wissen angepasst - ID für String-Variable, ID für das Skript sowie die ID’s für die Variablen eingetragen. Mehr habe ich zunächst mal nicht gefunden, um Highcharts grundsätzlich mal zum laufen zu bringen…

Nach Aufruf des Config-Skripts bekomme ich folgende Fehlermeldung (Anm: ID30132 referenziert auf das Highcharts Skript):
[i]Warning: Illegal string offset ‚ValueType‘ in /mnt/data/symcon/scripts/30132.ips.php on line 458

Notice: Uninitialized string offset: 0 in /mnt/data/symcon/scripts/30132.ips.php on line 458
Abbruch - Content-Variable ist keine STRING-Variable.[/i]

In Zeile 458 findet die Prüfung der Content Variable statt.

Die angegebene Variable ist eine String Variable mit dem hinterlegten Profil ~HTML-Box (siehe Screenshot)

In meinen Augen fehlt die Verbindung zwischen der im Config-File verwendeten Variable $CfgDaten und der im Highchart Skript verwendeten Variable $cfg.
Habe ich da was vergessen oder liege ich mit meiner Vermutung komplett daneben?

Danke vorab für eure Hilfe!!!

VG Olaf

Dein Eintrag der ContentVariableID im Config Script (steht ziemlich oben im Script) zeigt auch auf die o.a. StringVariable?
(Die übrigens richtig angelegt ist)

BTW: ich habe HighCharts 3.01

Gesendet von iPhone mit Tapatalk

…ja, das sollte passen (Auszug aus dem Config-File):

$CfgDaten[‚ContentVarableId‘]= 35178;

Highchart_Var_ID.png

Im „eigentlichen“ Highchart-File wird diese ID aber nicht mehr angegeben, richtig?

VG

Sollte passen. In der HighCharts Datei 3.01 wird nichts geändert. Diese ID wird nur in der Config eingetragen.

Gesendet von iPhone mit Tapatalk

Warning: Illegal string offset ‚ValueType‘ in /mnt/data/symcon/scripts/30132.ips.php on line 458

Bedeutet du hast die Highcharts 3.00 und musst aber zwingend 3.01 benutzen!
Michael

…wer lesen kann ist manchmal einfach klar im Vorteil. Danke, Michael - ich hatte „natürlich“ 3.00 verwendet. Der Umstieg auf 3.01 hat zumindest mal einen kleinen Fortschritt gebracht:

Skript konnte manuell gestartet werden --> Fehlermeldung „Zuviele gleichzeitige Skripte, Verwerfe ausführung“
Skript über WebFront gestartet --> Fehlermeldung „Zuviele gleichzeitige Skripte, Verwerfe ausführung“ (Surprise…)

Skript nach ein paar Minuten noch einmal über WebFront gestartet --> Dauerhafte Anzeige des „Sanduhr-Kringels“ (siehe Screenshot)

  1. Bzgl. Fehlermeldung habe ich im Forum einiges gefunden. Meine „eigenen“ Skripte laufen im Zeitbereich von 5 bis 15 Minuten und beschränken sich in der Regel auf einfache if-then-else abfragen. Anbei ein Screenshot „PHP Informationen“. Es laufen 10 Threats, die meisten vom ESERA 1-Wire Controller getriggert, aber fast ausschließlich im großen Minutenabstand, d.h. in meinen Augen „Standgas“.

  1. Bzgl. „Sanduhr-Kringel“ hat die Website einen Timeout gemeldet

Hat jemand noch eine Idee???

Nach mehrmaligem Neustart (Hart - d.h. Spannungsversorgung aus und wieder ein) kann ich mein erstes HighChart Skript sehen :-).

Ich „spiel“ mich heute mal etwas damit und werde auch ein Auge auf die PHP Infos werfen…

VG Olaf

Da muss ich Dir zustimmen. Ich lese zwar gerne Foren, aber dies ist einfach zeitintensiv. Die dürftige und nicht immer verständliche Doku bringt einen da wirklich auch nicht immer weiter. Nicht nur deshalb bin auch wirklich am überlegen auf openHab umzusteigen. Da muss ich zwar auch alles zusammensuchen, aber die sind mit dem Ganzen wirklich schon ein ganzes Stück weiter was die Abstraktion des Systems anbelangt. Zudem kostenlos und ein WebFont, dass ich auch sehen lassen kann ohne zusätzlich Geld in die Hand zu nehmen. In Kombination mit der LiVo App meiner Meinung nach besser als IPS…

@Allgaeuer: Na erst einmal Glückwunsch. Jetzt kannst Du ja richtig spielen.

@7weazel7: Also ich habe auch mal mit openHab geliebäugelt und werde immer mal wieder draufschauen. Selbst hat mich aber bisher aber nur die Idee dahinter angelockt. Die Anwendung und Umsetzung in der Praxis fand ich deutlich aufwendiger als bei IPS.
Die Doku von IPS hat sich ja deutlich verbessert und wer den mal reinschaut, findet meist auch das Richtige. Ich selbst schaue auch immer wieder gerne dort nach. Das ist ja ein lebendiges System und manchmal gehen Veränderungen an einem vorbei.
Nur wenn ein Forenmitglied eine fremde Software implementiert, kann ja IPS nicht dafür an den Pranger gestellt werden, wenn die Doku unzureichend ist. Wobei es hier noch nicht mal an der Doku lag. Oft entstehen Probleme auch einfach durch einen selbst.

So, heute ist wieder mal „IPS-Time“, nachdem die Familie schläft :-).

„Spiele“ gerade mit Highcharts und kann Floatwerte sauber darstellen. Leider klappt das Darstellen von Boolean Werten nicht. Die im Forum dazu geposteten Beiträge passen leider nicht zu meinem Problem. Es erscheint beim Aufruf die Fehlermeldung „Notice: Array to string conversion in /mnt/data/symcon/scripts/40802.ips.php on line 1441“.

Hier das Skript aus dem Config-File:


$serie = array();
	$serie['name'] = "Heizkreisstellventil";
	$serie['Id'] = 20992;
	$serie['Unit'] = array(0=>0, 1=>1);
	$serie['ReplaceValues'] = false;
	$serie['type'] = "line";
	$serie['step'] = true;
	$serie['yAxis'] = 2;
	$serie['shadow'] = true;
	$serie['lineWidth'] = 1;
	$serie['states']['hover']['lineWidth'] = 2;
	$serie['marker']['enabled'] = false;
	$serie['marker']['states']['hover']['enabled'] = true;
	$serie['marker']['states']['hover']['symbol'] = 'circle';
	$serie['marker']['states']['hover']['radius'] = 4;
	$serie['marker']['states']['hover']['lineWidth'] = 1;
	$CfgDaten['series'][] = $serie;

Variable 20992 ist eine Boolean Variable…

Zeile 1441 liegt im Bereich „CreateTooltipFormatter“ und ist mit „Einheit aus übergebenem Parmeter Unit“ Dokumentiert.


$s .= "[this.y + ' ". $Serie['Unit']."'],";

Hat jemand eine Idee, woran das liegen könnte?

Danke vorab für eure Hilfe!

VG

Hallo

Ich hab Highcharts nicht aaber:
$serie[‚type‘] = „line“;

Schönen Gruß:)
Egon

danke für den Hinweis…da bin ich auch drüber gestolpert, bin aber dann in meiner eindimensionalen Welt :slight_smile: davon ausgegangen, dass auch ein Boolean Wert per „line“ dargestellt werden kann (halt nur zweifach quantifiziert als 1 oder 0…). Ich habe auch keinen Typ Boolean in der „Doku“ gefunden - oder etwas anderes, was „passen“ würde, Boolean z.B. :-).

Hat da jemand eine Idee?

…ich muss noch mal um eure Hilfe bitten:

Ich hab jetzt viel probiert und bin tatsächlich auf eine Lösung gestoßen:

Die Config-Zeile


$serie['step'] = true; 

hat ganz banal gefehlt.

Nun kann ich (stolz :-)siehe Screenshot) schon ganz schöne Graphen erzeugen.

Einzig bei den Achsen tue ich mir noch etwas schwer. Ich würde gerne den Wertebereich einschränken und dazu die Parameter


        $CfgDaten['yAxis'][0]['tickInterval'] = 5;
	$CfgDaten['yAxis'][0]['min'] = 15;
	$CfgDaten['yAxis'][0]['max'] = 25;

nutzen.

Leider zeigt nur der Parameter „tickInterval“ eine Auswirkung - die Ordinate beginnt immer bei 0 und endet bei 7 x tickIntervall. min und max scheinen keine Auswirkung zu haben…

Kann mir da jemand weiterhelfen? Danke für eure Hilfe!!!

Gibt es eigentlich eine Möglichkeit die linke Y-Achse dynamisch und die rechte statisch zu skalieren?
Ich habe ein Diagramm das einmal Leistung in Watt (dynamisch) und einmal einen Prozentwert von 0-100 darstellen soll und die rechte Achse soll fest auf 0-100 skaliert werden.
Wenn ich im WebFront Editor auf „dynamisch“ umstelle, macht er immer beide Achsen dynamisch. Geht da irgendwas unter den Charteinstellungen oder mit dem Profil?