#!/bin/bash

#-- Die Tagesgrafik erstellen
#-- Version: 03.01.2015 
#-- gefüllte Gasverbrauchsfläche bei den Heizkreiskurven

# in das entsprechende Verzeichnis wechseln
# ganz wichtig für die crontab-Bearbeitung !!!
# crontab:
# 44 4 * * * /home/papa/C/tempsens/do_grafik.sh > /dev/null 2>&1
cd /home/papa/C/tempsens/

# aktuelle Plotdatei
DATEI_HEUTE=$(date +%Y-%m-%d.dat)
#echo "aktuelle Datei = "$DATEI_HEUTE   # TEST ======

for INPUT in *.dat
    do
        #echo $INPUT                    # Ausgabe TEST ======
        # bedingte Ausführung
        # die aktuelle Plotdatei nicht mit gnuplot bearbeiten
        # nur die der Vortage
        if "$INPUT" != "$DATEI_HEUTE" ]
        then
        
        # Titel der Grafik
        TAG=$(echo $INPUT | cut -c9-10)
        MONAT=$(echo $INPUT | cut -c6-7)
        JAHR=$(echo $INPUT | cut -c1-4)
        TITEL="Tageskurve "$TAG"-"$MONAT"-" # für gnuplot den Titel bilden
        PDFTITEL="Tageskurve "$TAG"-"$MONAT"-"$JAHR".pdf"   # PDF-Datei
        #echo $TITEL                        # TEST ======
        
        # Grafik mit gnuplot erzeugen
        gnuplot <<PLOT
# ========= 

set encoding iso_8859_1                 # Umlaute ermöglichen
set decimalsign '.'                     # Kommazeichen spezifizieren
set grid lt 0 lw 1 lc rgb "#1E90FF"     # Gitter zeichnen (Farbdruck)
#set grid lt 0 lw 1 lc rgb "black"      # Gitter zeichnen (SW-Druck)
set terminal pdf enhanced color solid font "Tahoma, 10" \
    size 29cm,20cm                      # DIN A 4 quer (29,7 * 21)

# ========= Legende positionieren
set key left

# ========= X-Achse für Datum/Uhrzeit vorbereiten
set timefmt "%d.%m.%Y-%H:%M:%S"         # Datenformat in der Tabelle
set xdata time                          # die X-Achse hat die Zeit
#set xrange ["28.04.2013-16:30:00":"28.04.2013-23:59:00"]

# ========= Y-Achsen vorbereiten
#set format y "%.0f"        # keine Nachkommastellen, normale Darstellung
#set format y2 "%.0f"       # keine Nachkommastellen, normale Darstellung
#set ytics
#set y2tics
set ylabel "Temperatur (Grad C)"        # Y-Achse beschriften

# ========= Variablen deklarieren
# INPUT = "2013-09-05.dat"
LINE1 = "VL-Heizung"
LINE2 = "RL-Heizung"
LINE3 = "VL-Speicherladung"
LINE4 = "RL-Speicherladung"
LINE5 = "VL-Solar"
FELD1 = "Gasverbrauch"
#JAHR  = "2013"
# TITEL = "Tageskurve 05-09-"

# ========= wichtige Einstellungen setzen
set xtics 7200                              # jede Stunde (3600)
set xlabel "Uhrzeit"                        # X-Achse beschriften
set format x "%H"                           # Texte der X-Achse formatieren
set ytics 2
set yrange [10:90]

# ========= die Daten plotten
set terminal pdf monochrome enhanced dashed     # monochrome color
set title "$TITEL"."$JAHR"                      # Titel setzen
set output "$TITEL"."$JAHR".".pdf"              # Datei benennen

# smooth {unique | frequency | csplines | acsplines | bezier | sbezier}

plot "$INPUT" using 1:2 title LINE1 axis x1y1 smooth unique with lines \
        linetype 1 linewidth 3 linecolor 10, \
    "$INPUT" using 1:3 title LINE2 axis x1y1 smooth unique with lines \
        linetype 1 linewidth 3 linecolor 12, \
    "$INPUT" using 1:4 title LINE3 axis x1y1 smooth unique with lines \
        linetype 1 linewidth 3 linecolor 13, \
    "$INPUT" using 1:5 title LINE4 axis x1y1 smooth unique with lines \
        linetype 1 linewidth 3 linecolor 14, \
    "$INPUT" using 1:6 title LINE5 axis x1y1 smooth unique with lines \
        linetype 1 linewidth 3 linecolor 11, \
    "$INPUT" u 1:2:3 title FELD1 w filledcu linewidth 3 linecolor 6
# ========= Ende
quit
PLOT
        
        # keine 2-malige Bearbeitung der Daten. Daher:
        INPUT_NEU=${INPUT%???}txt   # neuer Dateiname
        #echo $INPUT_NEU            # Ausgabe TEST ======
        mv $INPUT $INPUT_NEU        # bearbeitete Datendatei umbenennen
        cp "$PDFTITEL" /var/www/"$PDFTITEL" # die fertige Datei kopieren
        fi                          # Ende bedingte Ausführung
        
    done

exit 0