赞
踩
图形可视化在机器学习、网络、软件工程、数据库、生物信息、网页设计等技术领域有着重要的应用,实用高效的自动图形绘制软件在今日显得越来越具价值。今天,笔者向大家推荐一款开源的图形可视化软件Graphviz(Graph Visualization Software), 它使用方法简单,功能强大,能满足关系图、流程图、数据结构图、网络图、树形图等各种图形的绘制需求。
Graphviz由贝尔实验室开发,通过领域特定语言dot脚本绘制图形,并执行布局引擎来完成自动布局。它的主要特点包括:
下载网址为 http://graphviz.org/download/,各平台下载安装方式均有介绍,过程简单,不再赘述。
下文描述均基于windows系统。打开安装好的程序后如下图,只需在graph1.gv窗口输入Dot语言脚本,然后点击Layout按钮即可生成图片,Settings按钮可设置输出图片格式等。
图形可视化时要用软件能理解的格式来表示图形。Graphviz使用Dot语言格式,该格式可以以人类可读的方式编码图形的大多数属性。掌握Dot语言并不难,甚至对有编程基础的人员来说是非常简单,语法具体介绍见https://graphviz.org/doc/info/lang.html,在此不赘述,通过下文所举示例即可掌握其常用部分。
Dot语言主要描述3种对象:图、节点和边。图的形式可为有向图(关键字为digraph)或无向图(关键字为graph),另外在一个主图中还可通过subgraph定义子图。基本绘图方法示例如下:
如上,左图为Dot脚本,右图为输出结果。脚本第1行设定图属性和名称。如果1个字符串在脚本中第一次出现,它将会被创建为1个节点,比如“main”。注意,实际脚本中不需要行号,在此加上是为了更好地描述相关事项。
通常还要调整节点、边和图的属性和位置:
Dot脚本中方括号内为节点或边的属性;第12行设置了一个节点属性,随后第13行的compare节点继承了该属性。
一个无向图的Dot脚本从关键字graph开始,后面跟图的名称。节点u和v之间的无向边可以由u – v指定。举例如下:
一个有向图的Dot脚本从关键字digraph开始,后面跟图的名称。节点u到v的有向边可以由u -> v指定。上文“基本方法”一节绘制的即为有向图,另举例如下:
Graphviz提供了大量的节点、边、图、箭头类型、颜色等属性可供用户调整,具体可从Graphviz官网文档查阅,本文仅用部分箭头属性示例:
根据上述介绍,可以看出Graphviz是一款功能强大、使用便捷、上手容易的开源图形可视化软件,能满足机器学习、网络、软件工程、数据库、生物信息、网页设计等技术领域的相关图形绘制需求。希望读者尝试去使用它,相信一定会对您的学习工作起到促进作用。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。