FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: tiwo85 am 07 August 2020, 04:22:30

Titel: Saubere Darstellung der Bars im monats-Plot
Beitrag von: tiwo85 am 07 August 2020, 04:22:30
Moin,
Ich versuche seid Tagen eine saubere Darstellung der Balken im Diagramm.
Erfasst wir bei mir der Stromverbrauch von einem Shelly. Verarbeitung erfolgt durch das Statistics Modul.
Im Plot ist folgendes Reading:MQTT2_myMQTT2Client_CH2:statRelay_1_energyDay
Gibt es eine Möglichkeit, den rampenhaften eines jeden Balken zu eliminieren? Desweiteren überschneiden die schleicht.
Titel: Antw:Saubere Darstellung der Bars im monats-Plot
Beitrag von: rudolfkoenig am 07 August 2020, 09:08:14
Kannst Du bitte die Ausgabe von "Show preprocessed input" hier anhaengen, zusammen mit der .gplot Datei oder ein Screenshot des Plot-Editors.
Titel: Antw:Saubere Darstellung der Bars im monats-Plot
Beitrag von: rabehd am 07 August 2020, 09:41:10
Ich mache sowas für die Regenmenge.
Dargestellt wird die Regenmenge des Vortages und über eine Funktion die heutige Menge. Die Funktion habe ich durch Unterstützung hier im Forum gefunden.
Der Tagesverlauf ist bei mir zusätzlich visualisiert.

sub HeuteReading2Plot($$$$)
{
  my($from,$to,$device,$reading) = @_;
  my $fromsec = SVG_time_to_sec($from);
  my $tosec   = SVG_time_to_sec($to);
  my $ret = "";
  my $rt = ReadingsTimestamp( $device, $reading, undef );
  return $ret if( !$rt );
  my $sec = time_str2num($rt);
  return $ret if ( $sec < $fromsec || $sec > $tosec );
  my $val = ReadingsVal( $device, $reading, undef );
  my @t = localtime($sec);
  my $timestamp = sprintf("%04d-%02d-%02d_%02d:%02d:%02d", $t[5]+1900, $t[4]+1, $t[3], $t[2], $t[1], $t[0]);
  $ret .= sprintf("%04d-%02d-%02d", $t[5]+1900, $t[4]+1, $t[3], $t[2], $t[1], $t[0]) . "_23:55:59 $val\n";
  $ret .= "#plotCurrent: $device:$reading\n";
  return $ret;
}

Titel: Antw:Saubere Darstellung der Bars im monats-Plot
Beitrag von: tiwo85 am 08 August 2020, 04:35:06
Hier ist erstmal die gplot-Datei:
# Created by FHEM/98_SVG.pm, 2020-08-06 15:03:47
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 '<L1>'
set ytics
set y2tics
set grid
set ylabel ""
set y2label "pro Tag"

#DbLogMySQL MQTT2_myMQTT2Client_CH2:statRelay_1_energyDay::

plot "<IN>" using 1:2 axes x1y2 title 'Line 1' ls l1fill lw 1 with bars