prettyplot.pl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:2k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #!/usr/bin/perl
  2. #get arguments prettyplot.pl <strat> <infilename> <outfile> <legend-flag> 
  3. $strat = shift;
  4. $infile = shift;
  5. $outfile = shift;
  6. $flag = shift;
  7. $legend = "LEGEND: n
  8. All thruputs are in bits per sec n
  9. A = TCP Thruput = TCP bytes recvd / run timen
  10. B = Normalised TCP Thruput = TCP bytes recvd / on timen
  11. C = Link Thruput = Link bytes recvd / run time n
  12. D = Normalised Link Thruput = Link bytes recvd / ontime n
  13. sd = Corresponding standard deviationn
  14. Normalised link rate = Link rate * ontime / simtimenn";
  15. open(DATA, "$infile") || die "Can't open $infilen";
  16. open(LOG, ">>$outfile") || die "Can't open $outfilen";
  17. $n=0;
  18. while ($temp = <DATA>) {
  19.     chomp($temp);
  20.     ($retry[$n],$ontime, $A[$n],$A_sd[$n],$B[$n],$B_sd[$n],$C[$n],$C_sd[$n],$D[$n],$D_sd[$n],$n_link_rate) = split " ", $temp;
  21.     #$n_link_rate = @line[10];
  22.     #$ontime = @line[1];
  23.     #$retry[$n] = @line[0];
  24.     #$A[$n] = @line[2];
  25.     #$A_sd[$n] = @line[3];
  26.     #$B[$n] = @line[4];
  27.     #$B_sd[$n] = @line[5];
  28.     #$C[$n] = @line[6];
  29.     #$C_sd[$n] = @line[7];
  30.     #$D[$n] = @line[8];
  31.     #$D_sd[$n] = @line[9];
  32.     $n++;
  33. }
  34. if ($flag == 1) {
  35.     legend();
  36. }
  37. print LOG "nnNormalised_Link_Rate = $n_link_rate bps
  38. On_time = $ontimen
  39. $stratnn";
  40. print LOG "#N    A      A_sd     B      B_sd    C      C_sd     D     D_sdn";
  41. for($i = 0; $i < $n; $i++) { 
  42.     printf LOG "%-5s %-6d %-6d %-6d %-6d %-6d %-6d %-8d %-8dn", $retry[$i],$A[$i],$A_sd[$i],$B[$i],$B_sd[$i],$C[$i],$C_sd[$i],$D[$i],$D_sd[$i];
  43.     #$str = pack("A5" x 9 , $retry[$i],$A[$i],$A_sd[$i],$B[$i],$B_sd[$i],$C[$i],$C_sd[$i],$D[$i],$D_sd[$i]);
  44.     #print LOG "$strn";
  45. }
  46. close(LOG);
  47. close(DATA);
  48. sub legend { 
  49.     print LOG $legend; 
  50. }