NS2中的数据分析---gawk/Xgraph/gnuplot的使用

来源:互联网 发布:土建工程量计算软件 编辑:程序博客网 时间:2024/05/16 12:05

在运行完一个TCL脚本后,整个模拟过程的数据都存放在了Trace文件中,要对无线网络进行研究,需要使用一些工具对Trace文件进行分析.本文介绍分析文件用的工具gawk/xgraph/gnuplot.持续改进中...

1.使用gawk分析Trace文件

1.1 gawk简介

awk是一种脚本语言,有很强的行处理能力,无变量类型之分.gawk是GNU所开发awk,包括gawk的所有功能.

使用方式为:

gawk -f  programfile inputfile1 inputfile2...

也可以以命令行的形式执行.

字段变量意义$0为一个字符,其内容为目前awk所读入的一条记录$1$0上的第一个字段的数据$2$0上的第二个字段的数据......

1.2程序的主要结构

Pattern1      {actions1}

Pattern2      {actions2}

Pattern3      {actions3}

........

Patternn      {actionsn}

进行按行的匹配,如果当前的$0符合parttern,则执行相应的动作.

在gawk程序里面的规则,pattern/action能够被省略,但不能同时省略,无pattern时,action总会被执行,无action时,默认的操作为输出.

awk语言有两个特殊的Pattern,分别为BEGIN/END,顾名思义,在程序的头和尾各执行一次,不参与比较.

1.3 gawk的基本命令

<1>IO命令

print命令,用于直接的输出;

printf format,item1,item2.... 格式化的输出.

<2>流程控制命令

与C语言相同,有if/for/while/break/continue.....

1.4Patterns

<1>Pattern的种类

/regular expression/ 符合正则表达式;

Expression 指定的条件表达式;

BEGIN/END 程序的开始与结束;

null 空,任一时间都成立;

<2>regular expression

正则表达式所表示的子串,可以使用 ~ 表示等于; !~ 表示不等;


2. 图形绘制工具

使用gawk能够提取或计算出我们感兴趣的数据,但并不直观 ,所以需要用图形绘制工具来表示.

2.1 Xgraph

Xgraph是NS2自带的一个小巧的绘图工具,是一个根据两列数据生成平面图形的绘图工具.

使用方式:

xgraph filename1,filename...  {-options}

可以用参数(options)定制外观,使用方式较简单,但功能不及另一个绘图工具gunplot.

2.2 gnuplot

gnuplot是1986年由Colin Kelly和Thomas Williams开发的科学绘图工具,支持多种平台,设计的初衷即为了方便研究者绘制各种函数曲线与数据图.

gnuplot支持2维与3维图形,支持交互命令行模式与批处理方式.

2.2.1 gnuplot基础

在Terminal中键入'gnuplot',即可进行gnuplot的命令行界面.

绘制二维图形的命令是plot cos(x),和matlab的处理方式有些像,接触过matlab的同学基本上一看就会了.

退出时,只要输入quit或exit命令.

gnuplot支持众多的数学函数,除此之外,还可以绘制数据文件,具体命令:

gnuplot> plot 'filename'

文件中的'#'为注释,第一列为X轴,第二列为Y轴,

2.2.2 定制外观

我们可以用set命令去设定这些参数及用show命令去察看这些参数.

<1>与坐标轴有关的参数

<2>标识参数

<3>设定曲线样式