Graphviz - Graph Visualization Software 开源可视化绘图工具(visio 类)

 ​

Welcome to Graphviz

  Available translations:  Romanian, Russian, Russian (more natural?), Serbo-Croatian, Bulgarian Home and About

What is Graphviz?

Graphviz is open source graph visualization software. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. It has important applications in networking, bioinformatics,  software engineering, database and web design, machine learning, and in visual interfaces for other technical domains. 

Graphviz - Graph Visualization Software 开源可视化绘图工具(visio 类)_(visio 类)

Features

The Graphviz layout programs take descriptions of graphs in a simple text language, and make diagrams in useful formats, such as images and SVG for web pages; PDF or Postscript for inclusion in other documents; or display in an interactive graph browser.  Graphviz has many useful features for concrete diagrams, such as options for colors, fonts, tabular node layouts, line styles, hyperlinks, and custom shapes. 

Roadmap

dot - "hierarchical" or layered drawings of directed graphs. This is the default tool to use if edges have directionality.

neato - "spring model'' layouts.  This is the default tool to use if the graph is not too large (about 100 nodes) and you don't know anything else about it. Neato attempts to minimize a global energy function, which is equivalent to statistical multi-dimensional scaling.

fdp - "spring model'' layouts similar to those of neato, but does this by reducing forces rather than working with energy.

sfdp - multiscale version of fdp for the layout of large graphs.

twopi - radial layouts, after Graham Wills 97. Nodes are placed on concentric circles depending their distance from a given root node.

circo - circular layout, after Six and Tollis 99, Kauffman and Wiese 02. This is suitable for certain diagrams of multiple cyclic structures, such as certain telecommunications networks.

Download

The current release of Graphviz can be downloaded here: Download

Documentation

Documentation is available in the released package and from here: Documentation

Discussions

There is a forum for registered users to ask questions and share information. Or, if you prefer, there are mailing lists for both users and developers.

Bug And Issue Tracking

Reported Graphviz bugs and issues may be viewed by visiting the Issue Tracker.

If you are a registered Graphviz user, you may also report bugs and issues that you are aware of. Search for the issue you would like to report before hand  in order to avoid duplicate entries.

 

 

x

 

★Graphviz 能干啥?

  “绘图工具”有很多种,Graphviz 主要是用来绘制【关系图】。所以它更类似于微软的 Visio。但是它与 Visio 有一个【本质上】的差异:

用 Visio 画图是【手动】的——你需要动用你的肉眼和手指头。

而用 Graphviz 画图是【自动】的——你只需要告诉 Graphviz 这张图包含哪些元素,元素之间有啥关系,然后 Graphviz 可以【自动】帮你画出来。

  那么,你如何告诉 Graphviz 你要画的图形包含哪些元素捏?这就需要用到一个名叫 DOT 的描述语言(待会儿俺会简单介绍 DOT 语言)。


★为啥用 Graphviz 而不用 Visio 或类似的工具?

  客观地讲,Graphviz 和 Visio 之类的工具,各有各的特长。因为本文介绍的是 Graphviz,所以下面聊一下:哪些场景是 Graphviz 胜过 Visio 类工具的。

  简而言之,Graphviz 胜过 Visio 这类工具的关键在于【自动布局】。如果你要绘制的关系图非常复杂,这时候【手动】布局就变得极其繁琐。而 Graphviz 的自动布局功能,再复杂的关系图,也可以自动搞定。