That's easy too. Firstly change the print statement so it would print the time (in epoch seconds) and the rate separated by spaces. Write that output to a file, and then graph that file with gnuplot.
I actually have a perl program that draws a graph by calling gnuplot, here are a few parts of its code (I did it as a work so I don't want to publish all of it). The part not shown here opens a tempfile and writes into it the numbers in the simple format mentioned above. I also print some overall statistics to stdout. The following sub graphs the data then (it might need some adaptation for your purposes).
use File::Temp (); sub showgraph { my($cmdfile, $cmdfilename); my $cmds = qq[set key off\nplot "] . quote($outname) . qq[" wi +th lines\n! echo "Press return to continue" ; read\n]; ($cmdfile, $cmdfilename) = File::Temp::tempfile undef, "UNLINK +", 1; $out or die "error creating temporary commands file"; print "Writing gnuplot command to temporary file $cmdfilename\ +n"; print $cmdfile $cmds or die "error writing command file: $!"; flush $cmdfile or die "error flushing comand file"; print "Launching gnuplot\n"; system "gnuplot", $cmdfilename; close $cmdfile; }
Update 2008-01-29: see Plot a spiral with gnuplot.
In reply to Re^3: measuring IN/OUT traffic on your computer
by ambrus
in thread measuring IN/OUT traffic on your computer
by spx2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |