Autor Thema: SVG-Plot: Startwert bei logarithmischer Y-Achse  (Gelesen 1265 mal)

Offline KiK

  • New Member
  • *
  • Beiträge: 27
SVG-Plot: Startwert bei logarithmischer Y-Achse
« am: 16 Juni 2019, 22:02:02 »
Hallo,

gibt es eine Möglichkeit beim SVG-Plot mit logarithmischer Y-Achse den Achsen-Startwert zu setzen?
Siehe Bild_1: In meinem Fall hätte ich gerne, dass die Y-Achse bei "100" startet und nicht mit "0,5" oder "1".

Änderungen mittels:
set yrange [100:40000]
set y2range [100:40000]
... haben nicht den gewünschten Erfolg (Bild_2) - es werden lediglich die horizontalen Linien erst ab "100" dargestellt.

Gruß

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20994
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #1 am: 20 Juni 2019, 09:50:15 »
Abgesehen davon dass range mit log (halbwegs?) ignoriert wird (es hat zwar eine Auswirkung, nur nicht so, wie man es erfhofft), es werden auch unsichtbare Ticks generiert: wenn man in fhem.cfg.demo / SVG_01_Garden die rechte Seite auf log umstellt, und range mit [14:] beschraenkt, dann werden neben den sichtbaren Ticks 14,16,18,20 auch noch die Unsichtbaren 1.4,1.6,1.8 und 2 generiert. Predicted Temp ist erst ab 6.6 sichtbar. Ohne Beschraenkung lauft die Skala von 10 bis 20, und Predicted Temp ist ab 3.8 sichtbar.
 
Der log-Patch ist etwa 3 Jahre alt (https://forum.fhem.de/index.php/topic,53487) und offensichtlich habe ich es nie richtig verstanden.
Ich habe den Patch Autor um Hilfe gebeten.

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19399
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #2 am: 20 Juni 2019, 15:19:57 »
mit der angehängten 98_SVG.pm version sollte y start wert berücksichtigt werden.

damit 'Display plot values' ebenfalls geht ist die angehängte svg.js nötig.


allgemein: ich habe bei mir für alle log plots die plotsize gesetzt damit die plots alle deutlich höher werden. eine höhe von knapp 200 pixeln finde ich auch mit log darstellung einfach zu klein wenn der wertebereich über 5 oder 6 größenordnungen geht.


@rudi: unabhängig von der hier angehängten version: das automatisch erzeugen der y ticks funktioniert nur dann sinnvoll wenn die y achse einen grossen wertebereich hat der mehrere größenordnungen umfasst. wenn der wertebereich zu klein ist (ein paar bis ein paar 10) ist die eingebaute methode zu dumm. andererseits macht dan log von vornherein keinen sinn. deshalb hab ich mir nicht die mühe gemacht etwas besseres zu bauen.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20994
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #3 am: 20 Juni 2019, 15:40:13 »
Danke, habe die Aenderungen eingecheckt.

Offline kadettilac89

  • Hero Member
  • *****
  • Beiträge: 1019
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #4 am: 22 Juni 2019, 18:37:58 »
Hi,

nach dem Update von gestern habe ich ein Problem festgestellt. Er wird durch einen unrealistischen WErt den ein Sensor geliefert hat verursacht. Dadurch lässt sich aber FHEM nicht mehr aufrufen. Es läuft, jedoch ist Web-Schnittstelle "Tod". Ich denke durch einen zu großen Wert kommt es zu einem Überlauf o. ä. Der Fehler im Log ist ohne Timestamp, er wird also von Perl direkt geworfen. Ein Fehler sollte, wenn möglich, aber Fhem nicht lahmlegen.

Zeile 1774   ......
    my $f_log = int($hmax{$a}) ? ((SVG_log10($hmax{$a})-SVG_log10($hmin{$a})) /
                        ($hmax{$a}-$hmin{$a})) : 1;

Fehler im Log

Illegal division by zero at ./FHEM/98_SVG.pm line 1774.

Werte in der Datenbank die den Überlauf oder Fehler verursachen

2019-06-22 16:04:12    HMTempSensor2   CUL_HM     brightness: 268435456.0    brightness      268435456.0

Normaler Wertebereich für brightness "0 - 40.000". Der Sensor hat am Nachmittag, warum auch immer, einen Satz sinnloser WErte geliefert. Es ist aktuell Gewitter, er hängt draußen, vielleicht Aufladung nach einen Blitz ...

Wäre nett wenn ihr mal drüber schaut und ggf. ein "... or die" oder so einbaut.

Danke!

Edit: der Plot ist beim mit im Default Raum, darum kam ich gar nicht mehr auf Fhem. Es funktioniert nur der Raum nicht, in dem der Plot ist.
« Letzte Änderung: 22 Juni 2019, 18:40:01 von kadettilac89 »

Offline KiK

  • New Member
  • *
  • Beiträge: 27
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #5 am: 22 Juni 2019, 22:56:18 »
@justme1968: Vielen Dank - auch für den "plotsize"-Tipp! Funktioniert bei mir super...

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20994
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #6 am: 23 Juni 2019, 09:18:26 »
@kadettilac89: Danke fuer die Meldung, habe eine Pruefung eingebaut, kannst du es bitte testen?

Offline kadettilac89

  • Hero Member
  • *****
  • Beiträge: 1019
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #7 am: 23 Juni 2019, 13:49:29 »
@kadettilac89: Danke fuer die Meldung, habe eine Pruefung eingebaut, kannst du es bitte testen?
Hi Rudolf,

im Falle von Datenschrott ist der Plot leer, es kommt aber nicht mehr zum gemeldeten Problem.

Danke dir!

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16096
  • s/fhem\.cfg/configDB/g
Antw:SVG-Plot: Startwert bei logarithmischer Y-Achse
« Antwort #8 am: 25 Juli 2019, 19:13:32 »
Der gleiche Fehler mit der ungültigen Division durch 0 scheint noch an anderer Stelle aufzutreten.

https://forum.fhem.de/index.php/topic,102543.0.html
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.

 

decade-submarginal