[vz-users] Frage zur Darstellung mit Steps

Andre Bernemann andre.bernemann at gmail.com
Wed Jul 27 22:56:51 CEST 2016


Fantastisch, ich teste in Kürze mit!

Gruß
André

Andreas Götz <cpuidle at gmail.com> schrieb am Mi., 27. Juli 2016 um 21:56 Uhr:

> Klasse! Korrigiere ich, bräuchte aber trotzdem noch soegfältige Tester...
>
> Viele Grüße,
> Andreas
>
> Am 27.07.2016 um 20:48 schrieb Klaus Reichenecker <kr at kr123.de>:
>
> Hallo Andreas,
>
>
> konhte es auf die Schnelle noch nicht testen, aber denke das ist genau das
> was viele brauchen
>
> Vorschlag zum Namen, nachdem Du Dir bei "switch" nicht ganz sicher bist -
> wie wäre es mit "State`?  - Eigentlich zeigt es ja genau das an ?
>
> Viele Grüße
>
> Klaus
>
> ----- Original Message -----
> *From:* Andreas Goetz <cpuidle at gmail.com>
> *To:* volkszaehler.org - users <volkszaehler-users at demo.volkszaehler.org>
> *Sent:* Wednesday, July 27, 2016 8:07 PM
> *Subject:* Re: [vz-users] Frage zur Darstellung mit Steps
>
> Siehe https://github.com/volkszaehler/volkszaehler.org/pull/450
>
> Nicht getestet!
>
> Viele Grüße, Andreas
>
> On 27 Jul 2016, at 19:57, Matthias Kammerer <kammererm at gmail.com> wrote:
>
> Habe jetzt ein "stepsbefore" eingefügt und folgendes angepasst (aber nur
> ganz kurz getestet):
>
> root at homeserver:/var/www/serverroot/volkszaehler.org#
> <root at homeserver:/var/www/serverroot/volkszaehler.org> grep -r stepsbefore
> htdocs/frontend/vendor/flot/jquery.flot.fillbetween.js:
> withsteps = withlines && (s.lines.steps || s.lines.stepsbefore),
> htdocs/frontend/vendor/flot/jquery.flot.stack.js:                withsteps
> = withlines && (s.lines.steps || s.lines.stepsbefore),
> htdocs/frontend/javascripts/entity.js:
> case 'stepsbefore': value = 'Stufen-vorher'; break;
> htdocs/frontend/javascripts/entity.js:
> case 'stepsbefore': value = 'Stufen'; break;
> htdocs/frontend/javascripts/wui.js:             if (series.lines.steps ||
> series.lines.stepsbefore) {
> htdocs/frontend/javascripts/wui.js:                     if (style ==
> "stepsbefore") {
> htdocs/frontend/javascripts/wui.js:
> show:       style == 'lines' || style == 'steps' || style == 'stepsbefore',
> htdocs/frontend/javascripts/wui.js:
> steps:      style == 'steps' || style == 'stepsbefore',
> lib/Definition/PropertyDefinition.json:                 "stepsbefore",
> lib/Definition/EntityDefinition.php:     * @var string
> (lines|points|steps|stepsbefore)
>
> Gibt aber sicher elegantere Lösungen ;-)
>
> Am 27. Juli 2016 um 19:12 schrieb Andreas Goetz <cpuidle at gmail.com>:
>
>> Ich schaue mir- endlich- mal an. Auch ein paar der EntityDefinitions
>> müssen korrigiert werden. Update folgt hier.
>>
>> Viele Grüße, Andreas
>>
>> On 27 Jul 2016, at 18:49, Matthias Kammerer <kammererm at gmail.com> wrote:
>>
>> Stimmt... kann man tatsächlich weglassen und ist vermutlich sogar besser
>> so. Ansonsten müsste ich auch nochmal korrigieren:
>>
>>                                 tuples.unshift([entity.data.from, 1, 1]);
>> // add new first ts
>>                                 tuples[*0*][1] = tuples[*1*][1];
>>
>> Was ich mir noch zutrauen würde, wäre neben "Steps" ein "Steps-before"
>> einzuführen, also auswählbar über "Style". Wäre das eine akzeptable Lösung?
>>
>> Gruß
>>
>>
>>
>> Am 27. Juli 2016 um 17:45 schrieb Andreas Götz <cpuidle at gmail.com>:
>>
>>>
>>> Am 27.07.2016 um 17:23 schrieb Matthias Kammerer <kammererm at gmail.com>:
>>>
>>> OK... habs jetzt quick and dirty so gelöst:
>>>
>>>                         // mangle data for "steps" curves by shifting
>>> one ts left ("step-after")
>>>                         if (style == "steps") {
>>>                             tuples.unshift([entity.data.from, 1, 1]); //
>>> add new first ts
>>>                             tuples[1][1] = tuples[2][1];
>>>                         }
>>>
>>> Sieht das plausibel aus?
>>>
>>>
>>> Denke es tut- aber Du kannst das ganze if auch wegschmeissen. Jetzt
>>> fehlt nur noch das Verhalten via display mode konfigurierbar zu machen und
>>> den Defaultwert im Kanaltyp z.B. für Ventile zu hinterlegen.
>>>
>>> Viele Grüße, Andreas
>>>
>>>
>>> Jetzt gibt es bei mir eben kein "step-before" mehr, was ich aber auch
>>> nicht brauche.
>>>
>>>
>>> Am 27. Juli 2016 um 16:53 schrieb Matthias Kammerer <kammererm at gmail.com
>>> >:
>>>
>>>> Bin ich hier richtig?
>>>> // mangle data for "steps" curves by shifting one ts left
>>>> ("step-before")
>>>>                         if (style == "steps") {
>>>>                                 tuples.unshift([entity.data.from, 1,
>>>> 1]); // add new first ts
>>>>                                 for (i=0; i<tuples.length-1; i++) {
>>>>                                         tuples[i][1] = tuples[i+1][1];
>>>>
>>>>                                 }
>>>>                         }
>>>>
>>>>
>>>> Am 27. Juli 2016 um 16:34 schrieb Matthias Kammerer <
>>>> kammererm at gmail.com>:
>>>>
>>>>> Besten Dank schonmal für die Infos.
>>>>>
>>>>> Kleine Anmerkung zur Rückfrage bei den Points: geplottet wird
>>>>> tatsächlich nur der Point, aber in der Legende werden ja dann die Werte zum
>>>>> Curser angezeigt. Da kommen dann die linearen Übergänge.
>>>>>
>>>>> Invertieren ist für das beschriebene Beispiel tatsächlich eine gute
>>>>> Idee, aber... leider habe ich dann doch ab und zu sich wiederholende Werte
>>>>> drin und spätestens bei der Leistungsdeckelung meines Wechselrichters ist
>>>>> es vorbei :-|
>>>>>
>>>>> Ich könnte mich mal an dem verlinkten Issue #338 versuchen. Da ich
>>>>> mich komplett reindenken muss, bin ich mir nicht sicher, ob ich ausreichend
>>>>> Einarbeitungszeit finde und bin natürlich für jedes Futter dazu dankbar
>>>>> ;-).
>>>>>
>>>>>
>>>>> Am 27. Juli 2016 um 11:43 schrieb Andreas Götz <cpuidle at gmail.com>:
>>>>>
>>>>>>
>>>>>> Am 27.07.2016 um 11:36 schrieb Christian Schnellrieder <
>>>>>> schnellrieder.cs at gmail.com>:
>>>>>>
>>>>>> Kleiner Nachtrag:
>>>>>> kann man die Darstellung nicht berichtigen in dem man die Werte
>>>>>> invertiert?
>>>>>>
>>>>>>
>>>>>> Coole Idee! Für den Spezialfall des Ventils sollte das klappen- wenns
>>>>>> Zwischenwerte gibt nicht (40% auf?).
>>>>>>
>>>>>>
>>>>>> Christian Schnellrieder <schnellrieder.cs at gmail.com> schrieb am Mi.,
>>>>>> 27. Juli 2016 um 11:32 Uhr:
>>>>>>
>>>>>>> Hallo.
>>>>>>>
>>>>>>> >Hat jemand einen Lösungsvorschlag oder vielleicht sogar eine Lösung?
>>>>>>>
>>>>>>>
>>>>>>> Unschön aber bis das im Vz gefixt ist.
>>>>>>> Eine Schleife laufen lassen welche immer den letzten Status pusht.
>>>>>>>
>>>>>>> Grüße
>>>>>>>
>>>>>>> Andreas Götz <cpuidle at gmail.com> schrieb am Mi., 27. Juli 2016 um
>>>>>>> 10:57 Uhr:
>>>>>>>
>>>>>>>> Hallo Matthias,
>>>>>>>>
>>>>>>>> Am 27.07.2016 um 10:15 schrieb Matthias Kammerer <
>>>>>>>> kammererm at gmail.com>:
>>>>>>>>
>>>>>>>> Hallo zusammen,
>>>>>>>>
>>>>>>>> Ich habe verschiedene Kanäle z.B. als Ventil oder als
>>>>>>>> Leistungswerte, welche diskrete Werte annehmen. Dabei werden die Daten fast
>>>>>>>> ausschließlich in die Datenbank geschrieben, wenn sich etwas ändert. Also
>>>>>>>> im einfachsten Fall ein Schaltventil mit den Werten 0... 1: Wenn das Ventil
>>>>>>>> auf 1 geschalten wird, dann kommt die 1 mit Zeitstempel, wenn es auf 0
>>>>>>>> gestellt wird, dann entsprechend die 0.
>>>>>>>>
>>>>>>>> Ziel wäre nun, dass der Zustand über der Zeit im frontend so lange
>>>>>>>> den letzten Wert anzeigt, bis ein neuer Wert gesetzt ist. Je nach
>>>>>>>> Einstellung schaffe ich aber nur folgendes, was leider nicht ganz korrekt
>>>>>>>> ist:
>>>>>>>> A: Ich wähle "points" oder "lines" --> Dann wird zwischen den
>>>>>>>> Werten gewichtet gemittelt. D.h. das Schaltventil läuft zwischen den
>>>>>>>> Datenpunkten stetig und linear zum jeweils folgenden Wert.
>>>>>>>>
>>>>>>>>
>>>>>>>> Das stimmt nur für lines. Points zeit exakt den Punkt, sonst nichts?
>>>>>>>>
>>>>>>>> B: Ich wähle Steps --> Dann wird entlang der Zeitachse immer der
>>>>>>>> Wert des nächsten Datenpunktes angezeigt und nicht das letzten Punktes.
>>>>>>>> D.h. wenn ich das Ventil am Morgen auf "0" Stelle und am Abend auf "1",
>>>>>>>> dann zeigt es mir den ganzen Tag eine "1" anstelle der "0" an.
>>>>>>>>
>>>>>>>>
>>>>>>>> Ist bekannt. Wir bräuchten
>>>>>>>> https://github.com/volkszaehler/volkszaehler.org/issues/338
>>>>>>>> Leider fehlt mir aktuell die Zeit und ich hab selber kein Ventil im
>>>>>>>> Einsatz...
>>>>>>>>
>>>>>>>>
>>>>>>>> Ich habe schon versucht, den Sensor-Interpreter etwas zu verbiegen,
>>>>>>>> um zum Erfolg zu kommen, bin damit aber nicht weitergekommen.
>>>>>>>>
>>>>>>>> Hat jemand einen Lösungsvorschlag oder vielleicht sogar eine Lösung?
>>>>>>>>
>>>>>>>>
>>>>>>>> Das wäre in der vz.wui.plot Funktion zu regeln- relevante
>>>>>>>> Timestamps um 1 shiften da die Chartbibliothek die Funktion nicht her gibt.
>>>>>>>>
>>>>>>>>
>>>>>>>> Besten Dank und Gruß
>>>>>>>> Matthias
>>>>>>>>
>>>>>>>>
>>>>>>>> Viele Grüße, Andreas
>>>>>>>>
>>>>>>>
>>>>>
>>>>
>>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160727/6eb8d5d8/attachment-0001.html>


More information about the volkszaehler-users mailing list