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是一个可视化接口管理工具 通过分析接口结构,动态生成模拟数据,校 ...
随机推荐
- Spring Boot:定时任务
在我们开发项目过程中,经常需要定时任务来帮助我们来做一些内容, Spring Boot 默认已经帮我们实行了,只需要添加相应的注解就可以实现 1.pom 包配置 pom 包里面只需要引入 Spring ...
- vue-calendar 基于 vue 2.0 开发的轻量,高性能日历组件
vue-calendar-component 基于 vue 2.0 开发的轻量,高性能日历组件 占用内存小,性能好,样式好看,可扩展性强 原生 js 开发,没引入第三方库 Why Github 上很多 ...
- Mac上安装Docker
安装这个东东有两种方法:在线安装和手动安装 在线安装: 打开终端,直接输入brew cask install docker之后回车,执行的过程中会要求输入password(就是你电脑的登录密码),输入 ...
- Java并发编程阅读笔记-锁和活跃性问题
- 响应式编程系列(一):什么是响应式编程?reactor入门
响应式编程 系列文章目录 (一)什么是响应式编程?reactor入门 (二)Flux入门学习:流的概念,特性和基本操作 (三)Flux深入学习:流的高级特性和进阶用法 (四)reactor-core响 ...
- io复用select方法编写的服务器
摘要:io多路复用是通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般都是读就绪或者写就绪),就能通知应用程序进行相应的读写操作.select函数作为io多路复用的机制,第一个参数nfds是f ...
- browser_action' is only allowed for extensions but this is a legacy packaged app
manifest.json中不可包含调试代码: "app": { "launch": { "local_path": ...
- 自己练习的一个小的demo的时候a标签关于href链接的问题
一.Js的几种调用方法(参考总结的) 1.a href="javascript:js_method();" 这是常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且 ...
- ASP.NET Core2.2 多用户验证和授权
asp.net core2.2 用户验证 和授权有很详细和特贴心的介绍,我感兴趣的主要是这两篇: cookie身份验证 基于角色的授权 我的项目有两类用户: 微信公众号用户,用户名为公众号的openi ...
- unity UI如何开启(显示)或者关闭(隐藏)Panel界面最好?
https://segmentfault.com/a/1190000012357091 unity UI如何开启(显示)或者关闭(隐藏)Panel界面,相信大家都是知道的,但是如何做最好呢? 可能大家 ...