#! /bin/csh -f # Last edited on 2008-02-04 20:49:46 by stolfi set usage = "$0 [-eps EPS] < INFILE.pr2 > OUTFILE.gif" # Reads a file with fields of the form PROB1 PROB2 WORD. # Plots PROB1 aginst PROB2 in log scale, fudging zeros. set eps = "0.00001" set title = "word probabilities" while ( ( $#argv > 0 ) && ( "/$1" =~ /-* ) ) if ( ( $#argv >= 2 ) && ( "/$1" == "/-eps" ) ) then set eps = "$2"; shift; shift; else if ( ( $#argv >= 2 ) && ( "/$1" == "/-title" ) ) then set title = "$2"; shift; shift; else echo "invalid option $1" echo "usage: ${usage}"; exit 1 endif end if ( $#argv != 0) then echo "usage: ${usage}"; exit 1 endif set tmp = "/tmp/$$" set prfile = "${tmp}.pr2" set bmfile = "${tmp}.ppm" set gffile = "${tmp}.gif" cat > ${tmp}.pr2 gnuplot \ -bg black \ -pointsize 2 \ <1?0/0:x)) with lines lt 1, \ (x1?0/0:2*x)) with lines lt 2, \ (x2?0/0:x/2)) with lines lt 2, \ "${prfile}" using \ (sqrt(\$1**2 + eps**2)):(sqrt(\$2**2 + eps**2)) : \ (0.4 * eps):(0.4 * eps) \ title "words" with xyerrorbars lt 3 pt 1 quit EOF if ( ( -r ${bmfile} ) && ( ! ( -z ${bmfile} ) ) ) then ppmtogif < ${bmfile} > ${gffile} cat ${gffile} ( xv ${gffile}; /bin/rm -f ${gffile} ) & endif /bin/rm -f ${prfile} ${bmfile}