global stats_array conf global stats_urates global stats_drates set ratemax 1 foreach drate $stats_drates {if $drate>$ratemax {set ratemax $drate}} foreach urate $stats_urates {if $urate>$ratemax {set ratemax $urate}} set ratemax [expr round($ratemax)] set ratestep [expr 240.0/$ratemax] set timeint 5 set timeunit "Minutes" set fly [open "| $conf(flybin) -o $conf(flydir)/bandwidthmonitor.jpg.tmp" w] puts $fly "new" puts $fly "size 300,800" puts $fly "type jpg" puts $fly "fill 1,1,0,0,64" puts $fly "string 255,255,255,145,20,small,kB/sec" puts $fly "rotate 270" puts $fly "rect 40,20,760,260,0,192,192" puts $fly "string 255,255,255,12,15,small,$ratemax" puts $fly "string 255,255,255,12,250,small, 0" puts $fly "string 255,255,255,390,280,small,$timeunit" puts $fly "setstyle 0,0,64,0,0,64,0,0,64,0,192,192,0,192,192" for {set x 1} {$x<4} {incr x} { puts $fly "line 40,[expr 20+$x*60],760,[expr 20+$x*60],0,192,192" } for {set x 1} {$x<9} {incr x} { puts $fly "line [expr 40+$x*80],20,[expr 40+$x*80],260,0,192,192" puts $fly "string 255,255,255,[expr 35+$x*80],265,small,-[expr (9-$x)*$timeint]" } puts $fly "killstyle" set prevx 41; set prevy 259 for {set x 0} {$x<144} {incr x} { set rate [lindex $stats_drates $x] set thisx [expr 41+($x*5)] if $drate>=0 { set thisy [expr round(259-($rate*$ratestep))] puts $fly "line $prevx,$prevy,$thisx,$thisy,0,192,0" puts $fly "line $prevx,[expr $prevy-1],$thisx,[expr $thisy-1],0,192,0" } {set thisy 259} set prevx $thisx; set prevy $thisy } set prevx 41; set prevy 259 for {set x 0} {$x<144} {incr x} { set rate [lindex $stats_urates $x] set thisx [expr 41+($x*5)] if $drate>=0 { set thisy [expr round(259-($rate*$ratestep))] puts $fly "line $prevx,$prevy,$thisx,$thisy,192,0,0" } {set thisy 259} set prevx $thisx; set prevy $thisy } close $fly file rename -force $conf(flydir)/bandwidthmonitor.jpg.tmp $conf(flydir)/bandwidthmonitor.jpg