Ankündigung

Einklappen
Keine Ankündigung bisher.

Diagramm-Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Diagramm-Plugin

    Hallo zusammen,

    ich habe gerade dem Diagramm-Plugin rudimentäre "2-in-1"-Diagramme beigebracht (s.u.).

    Der Config-Code dazu sähe dann so aus:

    Code:
    <diagram_info colspan="1" rowspan="1" format="%.1f °C" unit="°C" series="day" refresh="300" yaxismin="16" yaxismax="25" gridcolor="#707070">
      <label>Temperaturen Kinderzimmer</label>
      <address transform="DPT:9.001" variant="" >5/2/100</address>
      <rrd color="#FF00FF" label="Noah">28.812EF0020000_temp</rrd>
      <rrd color="#FFFF00" label="Laura">28.E41AF0020000_temp</rrd>
    </diagram_info>
    (Weils für mich einfacher war, ist es ein diagram_info, das sollte sich aber ohne Probleme auf die anderen übertragen lassen)

    Ich würde gerne noch weitere Elemente einfügen (bis jetzt nur angedacht). Am Ende hätt eich gerne etwas wie
    Code:
    <diagram colspan="1" rowspan="1" series="day" refresh="300"   gridcolor="#707070">
      <label>Klima Badezimmer</label>
      <axis position="left" min="15" max="30">Temperatur °C</axis>
      <axis position="right" min="0" max="100">Luftfeuchte %</axis>
      <rrd color="#FF00FF" label="Temperatur" axis="left">28.812EF0020000_temp</rrd>
      <rrd color="#FFFF00" label="Luftfeuchte" axis="right">28.E41AF0020000_temp</rrd>
    </diagram>
    Die Frage ist: a) Ist das ausreichend flexibel b) kann der Editor das bzw. kann und will man (!= ich) es ihm beibringen?

    Gruss,

    der Jan
    Angehängte Dateien
    KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

    #2
    Zitat von JNK Beitrag anzeigen
    ich habe gerade dem Diagramm-Plugin rudimentäre "2-in-1"-Diagramme beigebracht
    Zitat von JNK Beitrag anzeigen
    Ich würde gerne noch weitere Elemente einfügen (bis jetzt nur angedacht). Am Ende hätt eich gerne etwas wie
    [...]
    Die Frage ist: a) Ist das ausreichend flexibel b) kann der Editor das bzw. kann und will man (!= ich) es ihm beibringen?
    a) Sieht für mich flexibel genug aus
    b) nein, er kann es jetzt nicht und ich werde es ihm auch nicht beibringen (können)...

    Wenn die Änderungen aber "abwärtskompatibel" sind, sollte IMHO nichts gegen eine Implementierung zum jetzigen Zeitpunkt sprechen.
    TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

    Kommentar


      #3
      Abwärtskompatibel? Ja, das lässt sich machen. Ich habe jetzt implementiert:

      WENN (rrd-Attribut vorhanden) DANN (altes Verhalten, rrd-Elemente werden ignoriert) SONST (rrd-Elemente werden verwendet).

      Das klappt auch mit allen Konstellationen die ich ausprobiert habe (sowohl in diagram als auch in diagram_info).

      <axis> habe ich noch nicht, wird auch dauern, aber da sollte das genauso gehen, wenn kein <axis>-Element vorhanden, dann altes Verhalten.

      Für den Rest teste ich noch ein wenig und Commit vermutlich heute abend.

      Gruss,

      der Jan
      KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

      Kommentar


        #4
        Wo ich gerade dabei bin: Gibt es Interesse an Achsenbeschriftungen? Also sowas wie "Stellwert" oder "Temperatur"? Das kann flot nicht, aber es gibt ein GPLv3-flot-Plugin, das das angeblich kann.

        Wenn das mehr als einer braucht, würde ich sagen, wäre das eine gute Sache und (glaube ich) auch nicht so kompliziert.

        Gruss,

        der Jan

        Edit: Sähe dann aus wie unten. Der Code in der Config für dieses Diagramm ist

        Code:
        <diagram_info colspan="1" rowspan="1" format="%.1f °C" series="day" refresh="30" gridcolor="#707070">
          <label>Temperatur Kinderzimmer Noah</label>
          <address transform="DPT:9.001" variant="" >5/2/100</address>
          <axis position="left" min="10" max="30" unit="°C">Temperatur</axis>
          <axis position="right" min="0" max="100" unit="%">Stellwert</axis>
          <rrd yaxis="Temperatur" color="#FF00FF" label="Temperatur">28.812EF0020000_temp</rrd>
          <rrd yaxis="Temperatur" color="#00FFFF" label="Sollwert">10_Noah_Sollwert</rrd>
          <rrd yaxis="Stellwert" color="#FFFF00" label="Stellwert">10_Noah_Stellwert</rrd>
        </diagram_info>
        Angehängte Dateien
        KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

        Kommentar


          #5
          Zitat von JNK Beitrag anzeigen
          Wo ich gerade dabei bin: Gibt es Interesse an Achsenbeschriftungen?
          Klar - was soll denn der Wert ohne Beschriftung sonst aussagen?

          Aber bitte aufpassen: Flot hat ja gewisse Probleme mit der Breite der Achsen-Werte (in der verwendeten Version aber zumindest weitgehend behoben IIRC). D.h. wir sollten nicht dadurch uns eine Regression einfangen...
          TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

          Kommentar


            #6
            An dieser Stelle würde ich gerne mal Fragen was man braucht um das Diagram nutzen zu können. Bei mir läuft die CV nicht auf dem Wiregate sondern auf einem Linux Rechner.
            Wie speicher ich die rrd's? Muß ich noch ein Tool im Webserver installieren der das aufzeichnet? (rrdtool?) Da bin ich nämlich bisher noch nicht hintergestiegen.

            edit: habe da grade was gefunden - https://knx-user-forum.de/knx-eib-fo...llieren-5.html - schaue ich mir morgen mal an ob mir das hilft.

            Kommentar


              #7
              Zitat von Chriko Beitrag anzeigen
              Wie speicher ich die rrd's? Muß ich noch ein Tool im Webserver installieren der das aufzeichnet? (rrdtool?) Da bin ich nämlich bisher noch nicht hintergestiegen.
              RRD ist gänzlich unabhängig von der CV. Hier wird es sicherlich unzählige Ressourcen im Netz geben, wie Du die erstellst und nutzt.

              Wenn die dann mal vorliegen, dann kann man die auch per CV bzw. Diagramm-Plugin anzeigen.
              Wenn Du so weit bist und es da hakt, können wir hier weitersehen.
              TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

              Kommentar


                #8
                Könnte auch sein, die Frage zielte auf den Lagerort.
                Kann das Diagram Plugin rrds anzeigen, die nicht lokal liegen, sondern einen Rechner weiter?
                Derzeit zwischen Kistenauspacken und Garten anlegen.
                Baublog im Profil.

                Kommentar


                  #9
                  So, hier kurz die neue Doku (Patrik kannst Du das entsprechend anpassen und übernehmen, wenn aus der SVN die Release-Version wird?)

                  Vorab: alles ist völlig abwärtskompatibel, d.h. eine bestehende Config funktioniert auch noch mit der neuen Version.

                  1) Für die Achsen:

                  Es entfallen die Attribute yaxismin, yaxismax und unit. Dafür gibt es jetzt ein zusätzliches Element:

                  [CODE]
                  <axis position="right" min="0" max="100" label="Stellwert %" unit=" %">percent</axis>
                  [\CODE]

                  Ausser dem Namen (hier percent) sind die Attribute optional. Defaults sind

                  position: left (es gibt left und right)
                  min, max: auto (weglassen macht Auto-Skalierung, ansonsten die Werte angeben)
                  label: (null) (wenn nichts angegeben, hat die Achse keinen Titel)
                  unit: (null) (wird an die Beschriftung der Achse angehängt)

                  Der Textcontent des Elements ist sowas wie ein "Name" der Achse und wird verwendet, wenn die RRDs den Achsen zugeordnet werden sollen.

                  2) Für die Daten:

                  Es entfallen die Attribute "rrd" und "linecolor"

                  Dafür gibt es neu das rrd-Element:

                  <rrd yaxis="temp" color="#FF00FF" label="Temperatur">28.812EF0020000_temp</rrd>

                  Ausser dem Namen (hier 28.xxx) sind die Attribute optional. Defaults sind

                  yaxis: 1 (das ist die zuerst definierte Achse, möglich sind die Namen aller definierten Achsen)
                  color: gridcolor (entspricht dem vorherigen linecolor, die Farbe der Datenlinie)
                  label: textcontent (wird in der Legende des Diagramms angezeigt, es erscheint der Name des rrd, wenn nicht definiert)

                  Der Textcontent des Elements ist das Quell-RRD.

                  Zwei Fragen bleiben noch:

                  Das Attribut "period" sollte global bleiben, weil nur Unterstützung für mehrere y- aber nicht x-Achsen implementiert ist. Sieht das jemand anders?

                  Was ist mit der Datasource? Global oder für das jeweilige RRD? Schwierig ist das nicht. Im Augenblick ist es noch global.

                  Gruss,

                  der Jan
                  KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

                  Kommentar


                    #10
                    Zitat von JNK Beitrag anzeigen
                    So, hier kurz die neue Doku (Patrik kannst Du das entsprechend anpassen und übernehmen, wenn aus der SVN die Release-Version wird?)
                    Da sich SVN z.Zt. schon ein gutes Stück weiter entwickelt hat und das nächste Release noch nicht in näherer Nähe stattfinden wird, sollte wir klären, wie wir hier mit der Doku umgehen sollten:

                    • In jedem Widget unten einen neuen Abschnitt das die Änderungen beschreibt?
                    • Zu jedem geänderten Widget eine weitere Seite "<Widgetname> SVN" wo die entsprechende Doku entsteht und zum Release rüber kopiert wird?
                    • Ganz anders?
                    TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

                    Kommentar


                      #11
                      Jan, hasst Du vielleicht mal eine aktuelle Beispielconfig?

                      Bin durch die ganzen Varianten jetzt etwas verwirrt

                      Danke und Gruß

                      Mirko
                      Umgezogen? Ja! ... Fertig? Nein!
                      Baustelle 2.0 !

                      Kommentar


                        #12
                        Erledigt, bin doch noch dahinter gestiegen

                        Code:
                        <diagram_info colspan="3" rowspan="1" format="%.1f °C" series="day" refresh="300" gridcolor="#707070" tooltip="true">
                          <label>Heizkreis</label>
                          <axis position="right" min="10" max="45" label="Aussentemperatur °C" unit=" °C">temp</axis>
                          <axis position="left" min="-15" max="35" label="Temperatur °C" unit=" °C">temp_out</axis>
                          <address transform="DPT:9.001" variant="" >7/0/10</address>
                          <rrd yaxis="temp_out" color="#ffff00" label="Außentemperatur">28.C65323030000_temp</rrd>
                          <rrd yaxis="temp" color="#ff0000" label="Heizkreis-Vorlauf">28.EC5E23030000_temp</rrd>
                          <rrd yaxis="temp" color="#0000ff" label="Heizkreis-Rücklauf">28.BA2A23030000_temp</rrd>
                          </diagram_info>
                        macht:
                        Angehängte Dateien
                        Umgezogen? Ja! ... Fertig? Nein!
                        Baustelle 2.0 !

                        Kommentar


                          #13
                          Sieht doch gut aus. Ich vermute mal nur, die Achsen sind vertauscht? Sonst wärs bei dir ziemlich warm und der Vorlauf eher zum kühlen.....

                          Gruss,

                          der Jan
                          KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

                          Kommentar


                            #14
                            Ja Du hast recht ... Ein dickes DANKE hatte ich auch noch vergessen

                            Wie sieht's mit den tooltips aus? Der Wert kommt als undefined, ist aber Kosmetik.
                            Umgezogen? Ja! ... Fertig? Nein!
                            Baustelle 2.0 !

                            Kommentar


                              #15
                              Sooo...

                              Jetzt komme ich auch mal dazu, die Doku im Bereich Diagramme zu erweitern.

                              Zitat von Chris M.
                              Da sich SVN z.Zt. schon ein gutes Stück weiter entwickelt hat und das nächste Release noch nicht in näherer Nähe stattfinden wird, sollte wir klären, wie wir hier mit der Doku umgehen sollten
                              Hmmm... Ich wäre dafür, dass ich für die SVN Version von Widget's, die schon existieren eine "Arbeitskopie" unter Labor anlege. Damit soll Verwirrung ausgeschlossen werden und am Tag des Releas können einfach die angepassten Beschreibungen wieder in's Handbuch kopiert werden.

                              Neue Widgets müssen sogar nur noch im Handbuch verlinkt werden

                              Oder gibt es bessere Ideen für den Ablauf?
                              Gruss Patrik alias swiss

                              Kommentar

                              Lädt...
                              X