Achsenbeschriftung links/rechts bei SVG

Begonnen von Dr. Boris Neubert, 04 April 2017, 18:01:46

Vorheriges Thema - Nächstes Thema

Dr. Boris Neubert

Hallo,

aus einem SVG-Plot mit mehreren ist nicht erkennbar, ob eine Kurve die linke oder die rechte Ordinate nutzt, wenn man die geplotteten Werte nicht extra auch noch an die jeweilige Ordinate schreiben möchte (siehe  Bild). Ich rege an, dass die Legende zu den Kurven, die die linke (rechte) Ordinate nutzen, an den linken (rechten) Rand linksbündig (rechtsbündig) geschrieben werden.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

rudolfkoenig

Das wuerde alle betreffen: sehen Andere irgendwelche Probleme damit?

Wernieman

Wenn ich es richtig verstehe, sollen also die Überschriften für die Kurven zur Linken Achse links dargestellt werden und die für rechts rechts?

Also in dem Beispiel würde die Beschriftung in Blau links erscheinen?

Finde ich so gut, würde aber bestimmt bei einigen Ihre schon fertige GUI etwas ... durcheinanderbringen.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

justme1968

links und rechts reicht nicht. es könne ja auch mehr als zwei achsen sichtbar sein.

wie wäre es neben den zeilen der legende die laufende nummer der achse nach zu stellen?

vielleicht durch einen platzhalter den man im label text verwenden kann und der automatisch ersetzt wird.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Dr. Boris Neubert

Zitat von: justme1968 am 04 April 2017, 19:42:15
links und rechts reicht nicht. es könne ja auch mehr als zwei achsen sichtbar sein.

Wie macht man denn das und wie sieht das aus? Ist das ein undokumentiertes Feature?

Unabhängig davon sind die Fälle mit einer oder zwei Achsen vermutlich die häufigsten und sollten automatisch erschlagen werden.

Zitat
wie wäre es neben den zeilen der legende die laufende nummer der achse nach zu stellen?

vielleicht durch einen platzhalter den man im label text verwenden kann und der automatisch ersetzt wird.

Für mich ist das nicht intuitiv und geht zudem einfacher "von Hand" direkt in der Achsenbeschriftung, so wie ich es gemacht habe in meinem Beispiel mit der blauen Kurve für Ozon.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

justme1968

#5
dokumentiert in der commander ist das nrAxis attribut mit dem du angibst wie viele achsen jeweils links und rechts vom plot dargestellt werden sollen. alle yX angaben im pilotfie gibt es bis X=8.

zwei unschönheiten gibt es aktuell noch:
- plots mit unterschiedlicher anzahl sichtbarer achsen haben eine unterschiedliche breite da
  sich die konfigurierte breite auf die breite inklusive der achsen bezieht.
- im ploteditor sind die yX einträge nicht neu anlegebar und nicht editierbar.
  sie gehen aber auch nicht verloren sobald man sie ein mal von hand eingetragen hat.
  zum editieren es gab schon einen patchvorschlag, zum neu anlegen noch nicht.
 
aussehen tut es dann z.b. so wie im anhang.

ganz automatisch (zumindest ohne attribut das dieses feature explizit einschaltet) geht es nicht da es mit dem captionLeft attribut koordiniert werden muss.

wie wäre folgendes:
- das captionLeft attribut wird ersetz durch ein captionPos attribut
- dieses kann die werte right, left und auto haben
- right ist der default
- left ersetzt captionLeft
- auto verteilt die label zeilen passend nach links und rechts
- das captionLeft wird automatisch passend in das captionPos attribut umgewandelt
- captionPos kann global und pro svg gesetzt werden
- captionLeft entfällt demnächst


 
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Dr. Boris Neubert

Das finde ich gut!

Idealerweise werden die Labels dann auch noch in Spalten gemäß der Anzahl der Achsen links und rechts angeordnet. In Deinem Speedtest-Beispiel sähe die Legende so aus:


|  upload                                                  download   ping  |  |


In der Commandref fehlen bei SVG die Backlinks zu nrAxis und plotsize als weitere globale Attribute, die am individuellen SVG-Device überschrieben werden können.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

justme1968

#7
anbei ein vorschlag wie das mit einem captionPos attribut aussehen könnte.

was noch fehlt:
- soll bei auto und mehr als einer achse links und rechts noch die achsen nummer hinter dem jeweiligen label erscheinen? oder reicht das sortieren nach links und rechts?
- automatisches umstellen von captionLeft
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Frank_Huber

Also ich fände es gut die Beschriftung links bzw rechts zu haben.
vielleicht auch als Attribut oder als Setting neben "Y-Axis" Einstellung pro Linie?

rudolfkoenig

Ich finde den Vorschlag gut: soll ich ihn schon einchecken, oder auf die anderen Sachen noch warten?

justme1968

noch nicht einchecken. das zusammenspiel mit dem 'alten' captionLeft muss auf jeden fall noch rein.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Frank_Huber

Zitat von: justme1968 am 04 April 2017, 21:40:58
dokumentiert in der commander ist das nrAxis attribut mit dem du angibst wie viele achsen jeweils links und rechts vom plot dargestellt werden sollen. alle yX angaben im pilotfie gibt es bis X=8.

Danke! Wieder was gelernt. :-)
Hätte es als Attribut aber auch nie in FHEMWEB vermutet...

/Frank

justme1968

ich habe den patch oben noch mal erweitert:
- ein gesetztes captionLeft attribut wird als fallback berücksichtigt
- der code für die achsen ist jetzt an einer stelle zusammengefasst
- doku ergänzt
- beliebige anzahl und verteilung von achsen getestet

noch zu klären:
- soll das alte captionLeft attribut automatisch durch captionPos ersetzt und gelöscht werden?
  wenn nein -> der patch wäre von meiner seite fertig

- soll captionPos auch global zu setzen sein
  wenn nein -> der patch wäre von meiner seite fertig

@Frank_Huber:
ZitatAlso ich fände es gut die Beschriftung links bzw rechts zu haben.
vielleicht auch als Attribut oder als Setting neben "Y-Axis" Einstellung pro Linie?
ich weiss nicht was du damit meinst. du kannst dich im plot editor angeben ob eine kurve zur rechten oder linken achse gehört.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Dr. Boris Neubert

Super vielen Dank!

Zitat von: justme1968 am 06 April 2017, 16:06:36
- soll das alte captionLeft attribut automatisch durch captionPos ersetzt und gelöscht werden?
  wenn nein -> der patch wäre von meiner seite fertig

Würde Konfigurationen nur ändern, wenn es unbedingt erforderlich ist. Ansonsten captionLeft als DEPRECATED kennzeichnen und mit dem nächsten Release sterben lassen.

Was ist denn aus meinem Vorschlag zur Anordnung der Legendeneinträge analog zur Position der Achsen (mehrspaltig bei mehr Achsen pro Seite) und meinen Hinweis zur fehlenden Doku von nrAxis und plotsize geworden?

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

justme1968

sorry. hatte ich übersehen.

die anordnung der label nebeneinander schaue ich mir an. das könnte aber problematisch werden da die position dann von der breite abhängt und diese nicht einfach und zuverlässig zu bestimmen ist.

zur fehlenden doku der globalen attribute: ich habe gerade mal nachsehen (auch im code) und scheinbar lassen sich die beiden attribute in der aktuellen fhem version tatsächlich nicht mehr global setzen. ich bin mir aber sehr sicher das dies mal ging. vielleicht weiss rudi hier mehr.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Frank_Huber

Zitat von: justme1968 am 06 April 2017, 16:06:36
@Frank_Huber: ich weiss nicht was du damit meinst. du kannst dich im plot editor angeben ob eine kurve zur rechten oder linken achse gehört.
Das war ja auch auf die  Beschriftung gedacht. War ich vielleicht von der Formulierung nicht eindeutig.

rudolfkoenig

ZitatIn der Commandref fehlen bei SVG die Backlinks zu nrAxis und plotsize als weitere globale Attribute, die am individuellen SVG-Device überschrieben werden können.

plotsize war drin, nrAxis habe ich hinzugefuegt.
Und die Doku der Attribute alphabetisch sortiert, damit sowas eher auffaellt.

justme1968

ich habe mich noch  mal mit der mehrspaltigen legende beschäftigt.

die von boris vorgeschlagene erweiterte version die auf jeder seite so viele spalten wie achsen hat ist nicht durch eine einfache änderung an SVG.pm umzusetzen da hier die text bzw. spalten breite nicht feststellbar ist. dazu müsste man die texte der spalten an die js seite durchreichen und dort das formatieren übernehmen.

ich würde vorschlagen den oben patch erst mal so wie er ist einzuchecken. der haupt fall mit je einer ache rechts und links wird damit ja schon abgedeckt und bei mehreren achsen passiert nichts völlig falsches.

was in dem patch noch nicht enthalten ist wäre das automatische umstellen von captionLeft auf captionPos und das entfernen eines gesetzten captionLeft attributs. sollen wir das noch einbauen oder reicht es captionLeft nicht mehr zu dokumentieren?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

Habs eingecheckt. captionLeft ist "deprecated", und wird automatisch nach captionPos left konvertiert.

Omega

Die Höhe, auf der captionPos ausgegeben wird, ist sehr unterschiedlich - s. Beispiele. Ist das so gewollt? Wie kann ich darauf einwirken? Ich finde es wichtig, dass die Legende möglicht weit oben steht, um nicht durch die Plots überschrieben zu werden.

Kleinigkeit am Rande: wenn das Attribut vorhanden ist und ich es von left auf auto ändern möchte, wird das Attribut auf den Status "undefined" gesetzt. Ich muss es erst löschen und danach neu setzen auf "auto".

LG
Holger
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

justme1968

die label sollten immer an der gleichen stelle los anfangen.

wie genau schaut das plotfile in dem problematischen fall aus?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

Zitatwenn das Attribut vorhanden ist und ich es von left auf auto ändern möchte, wird das Attribut auf den Status "undefined" gesetzt.
Das habe ich heute frueh gefixt. Glaube ich :)

SabineT

#22
Manchmal wäre es überhaupt schöner, wenn die Beschriftungen über der Grafik stehen würden, weil wenn die Kurven grad an den Enden ganz nach oben reichen sind die Beschriftungen schwer bis garnicht zu lesen.
Im pywws schaut das bei mir z.B. wie im Anhang aus, zum Vergleich dazu die Anzeige vom fhem..


lg, Sabine



justme1968

das geht leider nicht so einfach. zum einen weil dann die svg größe dynamisch wäre und zum anderen weiß die fhem seite nicht wie hoch die spalten mit dem labels sind. siehe oben zur breite zum nebeneinander anordnen.

auch hier würde es helfen dir label direkt an die js seite zu übergeben und dort das layout zu machen. das wäre aber ein großer umbau.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

SabineT

Das ist mir klar, darum hab ich auch "wäre" geschrieben ;)

Derzeit bin ich eh noch am fhem besser kennen lernen. Bei den Grafiken bin ich halt noch etwas vom pywws verwöhnt, das verwendet ja gnuplot.. Ich hatte auch schon versucht, von SVG auf gnuplot umzustellen, aber da hab ich in der Doku noch nichts brauchbares gefunden, wie dann die Datenübergabe ans gnuplot richtig konfiguriert wird.

Omega

Mein gplot-File:

# Created by FHEM/98_SVG.pm, 2017-04-22 10:36:46
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics ("off" 0, "on" 15, "40%" 40, "60%" 60, "80%" 80, "100%" 100)
set y2tics
set grid y2tics
set ylabel "Status(on/off) / Leistung %"
set y2label "Gasverbrauch in m³"
set yrange [0:100]
set y2range [0:<L1>]

#myFHEMdb Vitocrossal:Brenner
#myFHEMdb Vitocrossal:BrennerLeistung
#myFHEMdb hc.Gasverbrauch_Gesamt:countsPerDay
#myFHEMdb Vitocrossal:Speicherladepumpe
#myFHEMdb Vitocrossal:Zirkulationspumpe_2

plot "<IN>" using 1:2 axes x1y1 title 'Brennerstatus' ls l5 lw 2 with steps,\
     "<IN>" using 1:2 axes x1y1 title 'Brennerleistung' ls l0 lw 1.5 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Gasverbrauch' ls l1fill lw 0.2 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Speicherladepumpe' ls l2fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y1 title 'Zirkulationspumpe_2' ls l3fill lw 1 with steps


Die Unterschiede (ab welcher Höhe die Ausgabe erfolgt) ist anscheinend immer unterschiedlich (meine Beispiele von gestern sehen heute anders aus) und zumindest in diesem Plot (cl_3.jpg) abhängig vom höchsten Wert der y-Achse.
Den Wert setze ich dynamisch (s.a. cl_3.jpg).
Setze ich ihn fix (z.B. [0:1000]) ist die 1000 ganz oben und die Ausgabe passt (s.a. cl_4.jpg).

@rudolfkoenig
ZitatDas habe ich heute frueh gefixt. Glaube ich :)
Leider nein  :(

LG
Holger




NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

justme1968

#26
passiert das auch wenn du fest auf rechts oder links stellst?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

ZitatLeider nein
Leider doch
Gerade getestet, indem ich in meiner Update-Testinstallation update durchgefuehrt habe, dann FHEM mit fhem.cfg.demo gestartet habe, und das Attribut in in der Detail-Ansicht von SVG_01_Garden von right auf left auf auto geaendert habe, und dazwischen die Ausgabe kontrolliert habe.

Omega

#28
@rudolfkoenig
hast recht  :)
Shutdown restart hat in dem Fall nicht gereicht - ein erneuter Aufruf von Chrome war zusätzlich notwendig. Jetzt klappt die Umschaltung hervorragend. Danke.

Doch nicht ganz. Während meiner Tests wollte ich für die letzten Hardcopies wieder auf "auto" umstellen: fhem (bzw. der Browser) hat aber nicht auf meine Änderungswünsche reagiert (kein "undefined", nur eben keine Reaktion vom Browser nach Klick auf "attr"). Nach Löschen und Neuanlages des Attributes hat aber wieder alles funktioniert. Merkwürdig.

@justme1968
Mit "fest auf rechts oder links" meinst du vermutlich das "Grid aligned". Keine Änderung, wenn ich es auf links setze. Auch Änderungen an der Range (links) ändern nichts.
Die captionPos-Einstellung hat auch keine Auswirkung auf die Höhe, habe alle 3 Varianten getestet.
Die Ausgabe der Legende beginnt immer (eine Zeile) unterhalb des höchsten rechten Y-Achsen-Wertes. Wenn ich in meinem Beispiel auf 600 bzw. 1000 einstelle, ist das auch richtig so.
Stelle ich im Extremfall aber 799 ein, so wird als höchster Y-Achsen-Wert die 600 ausgegeben und unterhalb der 600 beginnt dann die Legende.


Nachtrag:
Ich schreibe das mal hier dazu, da vermutlich die heutiges Tests / Änderungen dazu geführt haben:
Mein Log ist voll mit folgenden Meldungen (ohne Timestamp)
Argument "on" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1554.
Argument "off" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1554.

40 mal diese Meldungskombination und 3 Zeilen wie folgt:
Argument "on" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 2161.
Argument "off" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 2161.
Argument "off" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 2161


Die aufgerufene Plotdatei ist die, die ich ein paar Beiträge vorher hier eingestellt habe. 
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Mr. Flash

Hallo,

ähnlich wie bei Omega rutscht bei mir die Ausgabe der Legende teilweise etwas nach unten.
In einigen Fällen (a) ca. eine halbe Zeile nach unten, in anderen (b) beginnt die Ausgabe unterhalb des Graphikbereichs, allerdings erscheint dann nur eine Zeile, der Rest wird abgeschnitten.

Bei (a) ist manchmal ein nach oben offener Wertebereich, z.B. "set y3range [0:]", die Ursache (siehe "Speedtest_auto_offen.jpg" und "Speedtest_auto_geschlossen.jpg").
Bei (b) sind manchmal mehr als drei gleichzeitig geplottete Kurven die Ursache. Das tritt aber auch schon bei Graphen mit nur einer geplotteten Kurve auf (siehe "Wassermelder_1_Plot.jpg" und "SUSV_5_Plots.jpg").
Eine Regelmäßigkeit konnte ich aber noch nicht erkennen.

Bei Nutzung des Attributes "captionPos auto" klappt die Zuordnung rechts/links auch nicht korrekt (siehe "Speedtest_auto_offen.jpg" und "Speedtest_auto_geschlossen.jpg").
Bei "left" und "right" stehen die Texte korrekt auf der linken bzw. rechten Seite, die Höhe bleibt aber unverändert.

Bei allen Graphen habe ich als Attribut "nrAxis 2,2,1,2" gesetzt.

Grüße,
Nik
RPi 3B+; Buster; FHEM 5.9; S.USV basic; BME280; TSL25911.
HM: CFG-LAN (0.965),CFG-USB-2,CC-RT-DN,Dis-(EP-)WM55,ES-PMSw1-Pl,ES-TX-WM,LC-Dim1T-FM,LC-Sw1-FM,LC-Sw2-FM,MOD-RPI-PCB,OU-CFM-Pl,RC-Dis-H-x-EU,SCI-3-FM,Sec-MDIR-2,-RHS,-SD,-SC-2,-SCo,-Sir-WM,-TiS,-WDS-2,TC-IT-WM-W-EU,WDS10-TH-O,WDS30-OT2-SM

justme1968

ich konnte das problem bisher nicht reproduzieren.

kannst du mal bitte die definition, das plotfile und ein logfile vom wassermelder fall hier anhängen? oder auch jeden anderen fall bei dem das für dich reproduzierbar ist.

danke
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Omega

Ich vermute mal, deine Frage an mich hat sich mit meiner vorhergehenden Antwort überschnitten...

Ich habe jetzt mal alles zusammengestellt.
Am Besten kann man das testen, wenn man die Funktion ,,Tics as" auf der rechten Seite verwendet (s.a. HC). Die Legende (egal ob auto, rechts oder links) ist immer eine Zeile unterhalb des höchsten rechten Y-Achsen Wertes.

LG
Holger

list SVG_FileLog_KG.Hobby.Thermostat_1

Internals:
   DEF        FileLog_KG.Hobby.Thermostat:SVG_FileLog_KG.Hobby.Thermostat_1:CURRENT
   GPLOTFILE  SVG_FileLog_KG.Hobby.Thermostat_1
   LOGDEVICE  FileLog_KG.Hobby.Thermostat
   LOGFILE    CURRENT
   NAME       SVG_FileLog_KG.Hobby.Thermostat_1
   NOTIFYDEV  global
   NR         622
   STATE      initialized
   TYPE       SVG
Attributes:
   captionPos left
   label      sprintf( "[%d:%.1f]",int(minNum($data{min1},$data{min2})-0.3),maxNum($data{max1},$data{max2})+0.5)
   plotsize   1024,160
   room       Keller
   title      "KG.Hobby.Thermostat Min $data{min1}, Max $data{max1}, Zuletzt $data{currval1} °C um $data{currdate1}"


SVG_FileLog_KG.Hobby.Thermostat_1.gplot

Internals:
   DEF        FileLog_KG.Hobby.Thermostat:SVG_FileLog_KG.Hobby.Thermostat_1:CURRENT
   GPLOTFILE  SVG_FileLog_KG.Hobby.Thermostat_1
   LOGDEVICE  FileLog_KG.Hobby.Thermostat
   LOGFILE    CURRENT
   NAME       SVG_FileLog_KG.Hobby.Thermostat_1
   NOTIFYDEV  global
   NR         622
   STATE      initialized
   TYPE       SVG
Attributes:
   captionPos left
   label      sprintf( "[%d:%.1f]",int(minNum($data{min1},$data{min2})-0.3),maxNum($data{max1},$data{max2})+0.5)
   plotsize   1024,160
   room       Keller
   title      "KG.Hobby.Thermostat Min $data{min1}, Max $data{max1}, Zuletzt $data{currval1} °C um $data{currdate1}"



NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

justme1968

#33
ich glaube ich habe das problem gefunden. schau mal ob der angehängte patch hilft.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Omega

Kannst du mir bitte die komplette 98_SVG.pm anhängen. Mit einem Patch habe ich noch nicht gearbeitet und möchte daher gerne eine weitere Fehlerquelle vermeiden.
LG
Holger
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Omega

Sieht super aus  :) :).
Ganz großes Dankeschön!

LG
Holger
NUC6i3SYH (FHEM 5.8 in VM)
Homematic: HMLAN, HMUSB, HM-Sec-SD, HM-CC-RT-DN, HM-TC-IT, ... + diverse weitere
LaCrosseGateway, ESPEasy
ZWave

rudolfkoenig

ZitatSieht super aus.
Ich gehe davon aus, dass das eine Freigabe war. Habs deswegen eingecheckt.

Mr. Flash

#38
Hallo Andre,

super, jetzt sind alle Legendentexte wieder da, wo sie hingehören. Vielen Dank.

Nur eins ist mir noch aufgefallen: bei "captionPos auto" passt die Zuordnung der Legendentexte zur linken bzw. rechten Seite noch nicht ganz. Sie dazu mein Bild "Speedtest_auto_geschlossen.jpg" weiter oben.
Die Downloadachse ist links, die Upload- und Ping-Achse rechts, bei den Legendentexten steht Download und Upload links und nur Ping rechts.

Die GPLOT-Datei sieht wie folgt aus:

set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set grid y2tics
set yrange [0:120]
set y2range [0:6]
set y3range [0:]
set ylabel <L1>
set y2label <L2>
set y3label <L3>

#logProxy FileLog:FileLog_Speedtest,predict:4:download\x3a::
#logProxy FileLog:FileLog_Speedtest,predict:4:upload\x3a::
#logProxy FileLog:FileLog_Speedtest,predict:4:ping\x3a::

plot "<IN>" using 1:4 axes x1y1 title '<L1>' ls l0 with lines,\
     "<IN>" using 1:4 axes x1y2 title '<L2>' ls l1 with lines,\
     "<IN>" using 1:4 axes x1y3 title '<L3>' ls l2 with lines


Die Config dazu so:

define mySpeedtest Speedtest 1800
attr mySpeedtest path /usr/local/bin

define FileLog_Speedtest FileLog %L/speedtest-%Y-%m.log mySpeedtest:.*
attr FileLog_Speedtest logtype text

define SVG_FileLog_Speedtest SVG myLogProxy:SVG_FileLog_Speedtest:CURRENT
attr SVG_FileLog_Speedtest label "download [Mbit/s]"::"upload [Mbit/s]"::"ping [ms]"
attr SVG_FileLog_Speedtest captionPos auto
attr SVG_FileLog_Speedtest title "Down: $data{currval1} [Mbit/s] / Up: $data{currval2} [Mbit/s] / Ping: $data{currval3} [ms]"
attr SVG_FileLog_Speedtest nrAxis 2,2,1,2
attr SVG_FileLog_Speedtest alias Speedtest
attr SVG_FileLog_Speedtest plotfunction FileLog_Speedtest


Brauchst Du sonst noch Infos dazu?

Viele Grüße,
Nik

Update: aktueles Bild (Speedtest_auto.jpg) hinzugefügt.
RPi 3B+; Buster; FHEM 5.9; S.USV basic; BME280; TSL25911.
HM: CFG-LAN (0.965),CFG-USB-2,CC-RT-DN,Dis-(EP-)WM55,ES-PMSw1-Pl,ES-TX-WM,LC-Dim1T-FM,LC-Sw1-FM,LC-Sw2-FM,MOD-RPI-PCB,OU-CFM-Pl,RC-Dis-H-x-EU,SCI-3-FM,Sec-MDIR-2,-RHS,-SD,-SC-2,-SCo,-Sir-WM,-TiS,-WDS-2,TC-IT-WM-W-EU,WDS10-TH-O,WDS30-OT2-SM

justme1968

mit der folgenden änderung sollte auch das behoben sein:Index: 98_SVG.pm
===================================================================
--- 98_SVG.pm (revision 14135)
+++ 98_SVG.pm (working copy)
@@ -2130,7 +2130,7 @@
     if( $caption_pos eq 'auto' ) {
       my $a = $conf{lAxis}[$i];
       my $axis = 1; $axis = $1 if( $a && $a =~ m/x\d+y(\d+)/ );
-      if( $axis <= $nr_left_axis ) {
+      if( $axis <= $use_left_axis ) {
         $caption_anchor = "beginning";
       } else {
         $caption_anchor = "end";


gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Mr. Flash

Hallo Andre,

ja, das war's. Jetzt klappt's perfekt.  :)

@Rudi: könnets Du die Änderung bitte einchecken? Danke.

Viele Grüße,
Nik
RPi 3B+; Buster; FHEM 5.9; S.USV basic; BME280; TSL25911.
HM: CFG-LAN (0.965),CFG-USB-2,CC-RT-DN,Dis-(EP-)WM55,ES-PMSw1-Pl,ES-TX-WM,LC-Dim1T-FM,LC-Sw1-FM,LC-Sw2-FM,MOD-RPI-PCB,OU-CFM-Pl,RC-Dis-H-x-EU,SCI-3-FM,Sec-MDIR-2,-RHS,-SD,-SC-2,-SCo,-Sir-WM,-TiS,-WDS-2,TC-IT-WM-W-EU,WDS10-TH-O,WDS30-OT2-SM

rudolfkoenig

Zitat@Rudi: könnets Du die Änderung bitte einchecken? Danke.
Erledigt.