mirror of
https://github.com/eddyem/lectures.git
synced 2025-12-06 02:35:18 +03:00
54 lines
1.3 KiB
Bash
54 lines
1.3 KiB
Bash
#!/bin/bash
|
|
#
|
|
# run it like
|
|
# ./plot 19.12.25/11\:20_T0.dat
|
|
#
|
|
OUT=tmpfile.txt
|
|
awk '{print $2 "\t" $3 "\t" $4}' $1 > $OUT
|
|
DATE=$(echo $1 | sed -e 's|/| |' -e 's|_.*||')
|
|
TX=$(echo $1 | sed 's|.*_\(.*\).dat|\1|')
|
|
if [ $TX = "T0" ]; then Tname="TOP side"
|
|
else Tname="BOTTOM side"
|
|
fi
|
|
VAL=$(head -n1 $1 | awk '{print $4}')
|
|
echo -e "30\t30\t$VAL\n-30\t-30\t$VAL" >> $OUT
|
|
cat << EOF > gnutplt
|
|
#!/usr/bin/gnuplot
|
|
set contour
|
|
unset surface
|
|
set cntrparam order 4
|
|
set cntrparam bspline
|
|
#set cntrparam levels auto 6
|
|
#set cntrparam levels incremental -30,0.1,30
|
|
set view map
|
|
set size square
|
|
set xrange [-40:40]
|
|
set yrange [-40:40]
|
|
set dgrid3d 100,100,4
|
|
set table "contour.txt"
|
|
splot '$OUT' u 1:2:3
|
|
unset table
|
|
unset contour
|
|
set surface
|
|
set table "dgrid.txt"
|
|
splot '$OUT' u 1:2:3
|
|
unset table
|
|
reset
|
|
set terminal jpeg enhanced size 1024,768
|
|
set output "$TX.jpg"
|
|
set size square
|
|
set xrange [-30:30]
|
|
set yrange [-30:30]
|
|
set xlabel "X, dm"
|
|
set ylabel "Y, dm"
|
|
set title "Mirror temperature $TX for $DATE ($Tname)"
|
|
set pm3d map
|
|
unset key
|
|
circle(x,y,z) = x**2+y**2 > 900 ? NaN : z
|
|
splot 'dgrid.txt' u 1:2:(circle(\$1,\$2,\$3)) w pm3d, 'contour.txt' u 1:2:(circle(\$1,\$2,\$3)) w l lc rgb "black", '$OUT' u 1:2:(circle(\$1,\$2,\$3)):3 with labels font ",8"
|
|
EOF
|
|
|
|
chmod 755 gnutplt
|
|
./gnutplt
|
|
rm -f gnutplt $OUT contour.txt dgrid.txt
|