56 lines
1.8 KiB
Bash
Executable File
56 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
if [[ $# -eq 0 ]]; 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 \
|
|
"$2" every ::1 using 1:5 title "$3" pt 2, \
|
|
"$4" every ::1 using 1:5 title "$5" pt 2, \
|
|
"$6" every ::1 using 1:5 title "$7" pt 2, \
|
|
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 \
|
|
"$2" every ::1 using 3:5 title "$3" pt 2, \
|
|
"$4" every ::1 using 3:5 title "$5" pt 2, \
|
|
"$6" every ::1 using 3:5 title "$7" pt 2, \
|
|
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 \
|
|
"$2" every ::1 using 3:4 title "$3" pt 2, \
|
|
"$4" every ::1 using 3:4 title "$5" pt 2, \
|
|
"$6" every ::1 using 3:4 title "$7" pt 2, \
|
|
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 \
|
|
"$2" every ::1 using 2:4 title "$3" pt 2, \
|
|
"$4" every ::1 using 2:4 title "$5" pt 2, \
|
|
"$6" every ::1 using 2:4 title "$7" pt 2, \
|
|
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
|