Moin zusammen,
Ich denke hier bin ich mit der Frage richtig. Bisher bin ich weder im iob forum noch im inet richtig weitergekommen.
Istzustand:
Darstellung Diagramme über MariaDB im flot Adapter als iframe. Dort liest sich ja in der url auch der Zeitbereich mitgeben.flot ist aber decrepated.
Sollzustand:
Wechsel auf echart. Diagramme kann ich erstellen. Handling ist auch besser als mit dem alten flot. Aber wie dynamisiere ich da z.b. die Range. Oder noch schlimmer: ich habe ein zentrales popup, wo zu verschiedenen Verbrauchern jeweils der zugehörige verbrauchsverlauf dargestellt wird. In flot war der datenpunkt dynamisiert.
Da hier auch viele den iob nutzen. Hat das schon jemand gemacht und verrät auch wie das geht. Es soll gehen, aber der Weg erschließt sich mir nicht.
Nicht erwünscht sind Werbeblöcke zu teuren anderen Softwareprodukte, die ja sonst immer direkt eingeworfen werden.
Danke, Roland
IObroker; Wechsel von flot zu echarts, wie gehen bindings
Moderator: Co-Administratoren
- Black
- Beiträge: 5904
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 517 Mal
- Danksagung erhalten: 1275 Mal
- Kontaktdaten:
Re: IObroker; Wechsel von flot zu echarts, wie gehen bindings
Hi Roland,
das war auch bei meiner Umstellung zuerst die Spassbremse, weshalb ich längere Zeit einen Bogen um ECharts gemacht habe. Gute Nachricht, es geht aber mit bisschen Javascript. EIgentlich auch recht einfach.
Der schlüssel ist, dass unter echarts.0 die Diagramm Objekte liegen, die du angelegt hast udn die du im Echart Widget zur Darstellung angibst. Das Objekt kannst du dir auch ansehen (im Object Explorer recht auf den Stift zeigt dir das JSON. Da wirst du auch die STruktur der Daten erkennen, die du eingegeben hast. Und diese Struktur kann man auch ändern. Das Kleingedruckte, man sollte dabei keine Fehler machen, deshalb alles Fein mit
fangen und in den Prüfungen immer schön mit
exceptions werfen, die dann den try block abbrechen und im log dargestellt werden.
ANsonsten ist dann der Weg:
1. In der Javascript instanz musst du setObject freigeben (es müssen ja Objekte bearbeitet werden)
2. mit z.b. oChart= getObject (_id_deines_Charts) den Chart Öffnen
3. mit oChart.native.data.range= DeinZeitbereichInMinuten die neue Range setzen
4. mit setObject (_id_deines_Charts,oChart) das Objekt modifizieren, die ANzeige folgt sofort
Damit es auch aus der Vis(2) heraus funktioniert, lege ich einen Datenpunkt an, den ich von überall aus mit einem Steuer JSON beschreiben kann.
Die Änderung des Datenpunktes triggert ein Javascript, welches das SteuerJSON auswertet und die dann einen ECHart Datenpunkt manipulieren kann.
Gruss, Black
das war auch bei meiner Umstellung zuerst die Spassbremse, weshalb ich längere Zeit einen Bogen um ECharts gemacht habe. Gute Nachricht, es geht aber mit bisschen Javascript. EIgentlich auch recht einfach.
Der schlüssel ist, dass unter echarts.0 die Diagramm Objekte liegen, die du angelegt hast udn die du im Echart Widget zur Darstellung angibst. Das Objekt kannst du dir auch ansehen (im Object Explorer recht auf den Stift zeigt dir das JSON. Da wirst du auch die STruktur der Daten erkennen, die du eingegeben hast. Und diese Struktur kann man auch ändern. Das Kleingedruckte, man sollte dabei keine Fehler machen, deshalb alles Fein mit
Code: Alles auswählen
try {
// tue was sinnvolles
} catch (error) {
log (error.message)
}fangen und in den Prüfungen immer schön mit
Code: Alles auswählen
throw new Error ("HierLiefWasSchief");exceptions werfen, die dann den try block abbrechen und im log dargestellt werden.
ANsonsten ist dann der Weg:
1. In der Javascript instanz musst du setObject freigeben (es müssen ja Objekte bearbeitet werden)
2. mit z.b. oChart= getObject (_id_deines_Charts) den Chart Öffnen
3. mit oChart.native.data.range= DeinZeitbereichInMinuten die neue Range setzen
4. mit setObject (_id_deines_Charts,oChart) das Objekt modifizieren, die ANzeige folgt sofort
Damit es auch aus der Vis(2) heraus funktioniert, lege ich einen Datenpunkt an, den ich von überall aus mit einem Steuer JSON beschreiben kann.
Die Änderung des Datenpunktes triggert ein Javascript, welches das SteuerJSON auswertet und die dann einen ECHart Datenpunkt manipulieren kann.
Gruss, Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising