Commit before breaking everything
[matches/honours.git] / research / TCS / plot.sh
old mode 100644 (file)
new mode 100755 (executable)
index ccc6621..2bc0c78
@@ -2,22 +2,53 @@
 
 # Script to plot .dat files
 
-title=$(grep "# Title: " $0 | sed 's/# Title: //g')
-labels=$(grep "# Format: " $0 | sed 's/# Format: //g')
-
 x=1
+toplot="3"
 ylabel="Counts"
-toplot="2 3 5"
-style="l"
+style="lp"
+dir="/home/sam/Documents/University/honours/research/TCS"
+
+title=$(grep "# Title = " $1 | sed 's/# Title = //g')
+comment=$(grep "# Comment = " $1 | sed 's/# Comment = *//1' | head --bytes=100)
+labels=$(grep -A 1 "# Data:" $1 | tail --lines=1 | sed 's/#//1')
+
+if [ "$title" == "" ]; then
+       title=$comment
+else
+       title="$title\n$comment"
+fi
+filename=$(echo $1 | sed -e "s:$dir::g")
+title="$filename\n$title"
 
 xlabel=$(echo $labels | tr " " "\n" | head --lines=$x | tail --lines=1)
-command="set title \"$title\""
+if [ "$2" != "" ]; then
+       if [ $2 == $1 ]; then
+               exit 1
+       fi
+       command="set term png size 1024,800; set output \"$2\""
+else
+       command=""
+fi
+
+command="$command; set title \"$title\""
 command="$command; set xlabel \"$xlabel\""
 command="$command; set ylabel \"$ylabel\""
-command="$command; plot \"$0\""
-
-for y in toplot; do
-       command="$command 
+command="$command; set key outside right"
+command="$command; set yrange [-0.1:1]"
+plot="plot "
+for y in $toplot; do
+       lab=$(echo $labels | tr " " "\n" | head --lines=$y | tail --lines=1)
+       if [ "$lab" == "" ]; then
+               lab=$y
+       fi
+       plot="$plot \"$1\" u $x:$y w $style t \"$lab\","
+done
+       
+plot=$(echo $plot | sed -e "s/,//$(echo $toplot | wc -w)")
+command="$command; $plot; exit"
+
+gnuplot="/usr/bin/gnuplot"
+$gnuplot --persist -e "$command"
 
 
 

UCC git Repository :: git.ucc.asn.au