NS3可视化及动画工具(PyViz和NetAnim)
一、PyViz安装
1.安装依赖包
sudo apt-get install python-dev python-pygraphviz python-kiwi python-pygoocanvas python-gnome2 python-gnomedesktop python-rsvg
注意: ‘python-gnomedesktop’安装包问题 将命令python-gnomedesktop换为 python-gnome2-desktop-dev
2.安装交互python使得GUI上有控制台按钮
sudo apt-get install ipython
3.PyViz测试
1) python脚本
./waf --pyrun src/flow-monitor/examples/wifi-olsr-flowmon.py --visualize
2) C++脚本
对于src/olsr/examples/simple-point-to-point-olsr.cc脚本,要出现GUI界面,使用下面的命名是无法成功的
./waf --run src/olsr/examples/simple-point-to-point-olsr --vis
需要修改wscript文件(都可~)
obj=bld.create_ns3_program('simple-point-to-point-olsr', ['point-to-point', 'internet', 'olsr', 'applications', 'wifi'])
修改成
obj=bld.create_ns3_program('simple-point-to-point-olsr', ['point-to-point', 'internet', 'olsr', 'applications', 'wifi', 'visualizer'])
4.使用方法
以命令行参数的形式调用,只要编写的脚本(形如xxx.cc文件)中加入下面的语句(需加在创建节点之前):
1)CommandLine cmd;
2)cmd.Parse (argc, argv);
运行程序时加入参数 --vis
比如:sudo ./waf --run examples/tutorial/third --vis
5.使用实例

sudo ./waf --run scratch/first --vis
注意:--vis 选项无效
visualizer模块依赖PythonBinding,NS3中的PythonBinding由pybindgen完成,但是pybindgen工具在ns-allinone-3.xx目录下,而不是在ns-3.xx目录下,如果移动了ns-3.xx的目录,就无法定位pybindgen进而完成PythonBinding
解决方法:
重新配置和编译NS-3,配置行用 --with-pybindgen加上pybindgen所在目录:
sudo ./waf -d debug --enable-examples --enable-tests configure --with-pybindgen=~/NS3/ns-allinone-3.25/pybindgen-0.17.0.post49+ng0e4e3bc/
sudo ./waf
注意事项:
1)LTE devices do not support visualizer yet.也就是PyViz不适用于LTE网络设备
2)You cannot use visualizer with simulations that require emulation (EmuNetDevice, TapNetDevice) or real-time scheduler (RealTimeSimulator).
二、安装NetAnim
1.安装依赖包并下载
sudo apt-get install mercurial
sudo apt-get install qt4-dev-tools
这里可以下载关于NS3的很多软件包 http://code.nsnam.org/
2.安装NetAnim
进入Netanim文件夹

cd netanim-3.107
sudo make clean
sudo qmake NetAnim.pro (For MAC Users: qmake -spec macx-g++ NetAnim.pro)
sudo make
参考:
1. https://blog.csdn.net/mars_nudt/article/details/7464088
2. https://blog.csdn.net/tttabcgy/article/details/77675853
3. https://blog.csdn.net/wuzhiwuweisun/article/details/79493986
4. https://blog.csdn.net/qq_22634949/article/details/83543311
5. https://blog.csdn.net/wuzhiwuweisun/article/details/79790041
NS3可视化及动画工具(PyViz和NetAnim)的更多相关文章
- NS3 使用NS3工具PyViz
官方文档 跑了一个样例(first.py): 由于 NetAnim 对我实在是有点不友好,在 PyViz 和 NetAnim 之间,我倾向前者.后者需要生成.xml文件,相比前者较为麻烦. 安装过程: ...
- Charted – 自动化的可视化数据生成工具
Charted 是一个让数据自动生成可视化图表的工具.只需要提供一个数据文件的链接,它就能返回一个美丽的,可共享的图表.Charted 不会存储任何数据.它只是获取和让链接提供的数据可视化. 在线演示 ...
- 给你推荐10款优秀的 HTML5 动画工具
HTML5 在过去三年快速增长,已经成为 Web 开发人员最喜欢的编程语言之一.强大的编程语言拥有开发更好的网页应用的能力. HTML5 中引入的新技术都非常好,像 Chrome.Firefox.Sa ...
- 在线视频转gif动画工具 在线视频转gif动画工具下载
在线视频转gif动画工具 在线视频转gif动画工具下载 http://www.leawo.cn/space-1723875-do-thread-id-60715.html http://www.lea ...
- 设计师必看的10个HTML5动画工具
如果你想用令人难以置信的动画创建引人注目的网站的话,那么这里为设计师精心挑选了一些必备的HTML5动画工具.HTML5是设计师用来打造时尚网站的最流行的编程语言之一.在过去三年内,这种编程语言的使用人 ...
- 可视化日志分析工具Gltail的安装与使用
可视化日志分析工具Gltail的安装与使用 GlTail.rb 是一款带有浓郁的 Geek 风格的可视化日志分析工具,它采用 Ruby 技术构建,并利用 OpenGL 图形技术进行渲染,呈现 ...
- Git - 可视化冲突解决工具P4Merge
P4Merge P4Merge是Git的一个第三发Diff和Merge工具(可视化冲突解决工具). 下载地址: https://www.perforce.com/downloads/visual-me ...
- 10个基本的HTML5动画工具设计
HTML5已经成为最流行的编程语言在web开发者.强大的编程语言有很大的能力,生产更好的万维网内容.HTML5的兴起已经在过去三年增长迅速.介绍了HTML5的新技术是更好的.HTML5技术是由像Chr ...
- 可视化接口管理工具RAP,模拟数据,校验接口
最近看到一个不错的接口管理的工具,分享一下 RAP ppt介绍:http://www.imooc.com/video/11060 RAP是一个可视化接口管理工具 通过分析接口结构,动态生成模拟数据,校 ...
随机推荐
- db2常用语句
连接数据库 db2 connect to chmgmdb user ch_mgm 断开数据库 db2 disconnect current 查询 db2 "select * from btp ...
- 版本管理工具小乌龟TortoiseGit的安装和使用(1)
1.软件的安装:1.1 安装 Git使用软件管理工具搜索 Git:
- python学习小总结(列表、元组、字典、集合、字符串)
---恢复内容开始--- 一.列表(list) 1.添加 append():追加,在列表末尾添加元素. 列表名.append(添加的元素) extend():扩展,在列表末尾添加元素. 列表名.ext ...
- CSS3-3
关于背景 一. 渐变&径向渐变(background-image: -webkit-linear-gradient() && background-image: -webkit ...
- 嵌入式单片机,ATmega328P,外部中断INT0,INT1,INT2,中断标志位介绍
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- 如何用jmeter进行数据库性能测试
由于业务需要,需要进行数据库性能测试,记录过程进行学习 测试前期准备: 1.测试点准备及需求点 a.性能测试目的 b.jmeter测试数据库基本脚本 get c.数据库性能监控工具选择 d.服务器性 ...
- 定义一个Map集合,key和value不规定类型,任意放入数据,用keySet()和 entrySet()两种方式遍历出Map集合的数据
package com.lanxi.demo1_1_1; import java.util.HashMap; import java.util.Iterator; import java.util.M ...
- 用 LSTM 做时间序列预测的一个小例子(转自简书)
问题:航班乘客预测 数据:1949 到 1960 一共 12 年,每年 12 个月的数据,一共 144 个数据,单位是 1000 下载地址 目标:预测国际航班未来 1 个月的乘客数 import nu ...
- kali linux 配置嵌入式开发环境
kali linux 2018.2 x64 一.支持i386库 如果你是64位的Kali Linux系统,用如下命令添加i386架构支持到你的开发环境. dpkg --add-architecture ...
- java基础知识—类和对象
1.对象的特征---类的属性 每个对象的每个属性都有特定的值 对象的操作---类的方法 2.封装 对象同时具有属性和方法两项属性. 对象的属性和方法同时被封装在一起,共同体现事物的特性,二者相辅相成, ...