OIer好帮手:graphviz功能演示
来源:互联网 发布:知乎图片 编辑:程序博客网 时间:2024/05/22 05:16
原来我经常在想,要是有软件能帮我把图论题的数据画出来就好了。后来我想到一个制作这种软件的方法,就是把所有的点的位置设定为圆周上的等分点,这样可以最大限度的保证图象不致于太乱。我没想到居然有程序可以智能地决定哪个点、哪条边放在哪里更好看。
我在OIBH的这个帖子里找到了这个好东西,它可以帮助OIer将大规模的图论题数据转化为图便于观察。今天我又用到了几次,突然想到把它介绍在我的Blog上。
graphviz的主页设在http://www.graphviz.org,你可以在这里下载到最新的Windows版本,目前最新版本的安装程序为graphviz-2.12.exe。安装后你可以在dos下(任何目录中)调用它的命令行模式。
这里,我们使用dot语言。官方网站上有关于dot语言的详细的用户手册,这里我只把常用的一些功能做一下演示。你可以在这篇日志的三个截图中掌握足够的知识来应用graphviz。
先说明一下最顶上的Hello World程序。dot是程序名,参数-Tgif表示以gif格式输出,参数-O表示输出文件的方式设为默认(在当前目录下输出名为noname的文件,其后缀名与参数-T???所设定的类型相同)。下面一行输入的是graphviz所用的dot语言,digraph G表示有向图,花括号里描述图的内容。这样就生成了一个最简单的图。
下面一个例子说明了如何输出一个边上有权值的无向图。这是OIer经常要用的东西。size=4,4指定了图的大小,单位为英寸。如果没有这一句的话,默认的图要大得多。你可以另外写一个程序把你的数据按图中的格式转化为dot代码。虽然graphviz可以从外部文件中读入这段代码,但我觉得粘贴进dos窗口更方便一些。
下面这个例子包含更多的参数,展示了graphviz更多的功能。输出为ps文件更好看一些,因为输出ps文件可以反锯齿(应该是矢量的)。
- OIer好帮手:graphviz功能演示
- 代理服务器好帮手--SOCKS2HTTP
- 编程好帮手ReSharper
- 翻译好帮手
- vb好帮手------CodeSmart
- 生活好帮手
- cstn好帮手
- 报表工具好帮手
- profiling调试好帮手
- 射频电路设计好帮手
- XDoclet:EJB开发好帮手
- linux 的好帮手 yum
- XDoclet:EJB开发好帮手
- linux 的好帮手 yum
- XPath学习的好帮手
- linux 的好帮手 yum
- CSDN,学习的好帮手
- flashlight--spotlight的好帮手
- 解决FireFox访问Google Analytics不能正常显示Flash的问题
- 真正值得膜拜的牛人:3月25日亲眼目睹“最牛钉子户”
- 分享我的一些PJBlog小技巧
- Think like an OIer: 信息学思维测试疯狂搞笑版
- 分享三道题目的代码+JavaScript Syntax Highlight测试
- OIer好帮手:graphviz功能演示
- 刺激好玩的小游戏:GridWars
- 美剧新剧时间:只关注DRIVE
- 我也爆机了:冰人通关游戏截屏
- 令人称奇的简单证明:五种方法证明根号2是无理数
- Lost S03Ep07 - Brainwashing Scene
- 劳拉快跑:假如你今天晚一秒钟出门的话……
- 非传统题型练习:解析一道循环赛题目
- 非传统题型练习:三道交互式题目