masterarbeit/dokumentation/evolution3d/images.sh
2017-10-27 14:31:55 +02:00

42 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
if [[ $# -ne 1 ]]; then
echo "usage: $0 <DATA.csv>"
else
data="$1";
png="`echo $1 | sed -s "s/\.csv$//"`" # strip ending
(cat <<EOD
set datafile separator ","
f(x)=a*x+b
fit f(x) "$data" every ::1 using 1:5 via a,b
set terminal png
set xlabel 'Regularity'
set ylabel 'Number of iterations'
set output "${png}_regularity-vs-steps.png"
plot "$data" every ::1 using 1:5 title "data", f(x) title "lin. fit" lc rgb "black"
g(x)=aa*x+bb
fit g(x) "$data" every ::1 using 3:5 via aa,bb
set xlabel 'Improvement potential'
set ylabel 'Number of iterations'
set output "${png}_improvement-vs-steps.png"
plot "$data" every ::1 using 3:5 title "data", g(x) title "lin. fit" lc rgb "black"
h(x)=aaa*x+bbb
fit h(x) "$data" every ::1 using 3:4 via aaa,bbb
set xlabel 'Improvement potential'
set ylabel 'error given by fitness-function'
set output "${png}_improvement-vs-evo-error.png"
plot "$data" every ::1 using 3:4 title "data", h(x) title "lin. fit" lc rgb "black"
i(x)=aaaa*x+bbbb
fit i(x) "$data" every ::1 using 2:4 via aaaa,bbbb
set xlabel 'Variability'
set ylabel 'error given by fitness-function'
set output "${png}_variability-vs-evo-error.png"
plot \
"$data" every ::1 using 2:4 title "data", \
i(x) title "lin. fit" lc rgb "black"
EOD
) > "${png}.gnuplot.script"
gnuplot "${png}.gnuplot.script" 2> "${png}.gnuplot.log"
mv fit.log "${png}.gnuplot.fit.log"
fi