图:Network

图是计算机科学的一个大主题,可用于抽象表示交通运输系统、人际交往网络和电信网络等。对于训练有素的程序员而言,能够用一种形式来对不同的结构建模是强大的力量之源。 —— Steven S. Skiena《算法设计指南》

Graph 是一个包含了一系列对象的数据结对,这些对象由表示关系的 Edge(线条)和表示节点的 Node(节点,或者 Vertex,即顶点) 组成:

  • Node 可以用 Dot (点)和 Circle (圆圈)的形状来表示。
  • Edge 可以用 Line (线)和 Curve(曲线)来表示。

问题

如何表示一个复杂的系统?

解决方案

使用图来表示系统的结构。

示例

Dependency Graph

局限性

2D 场景下,存在一定的布局策略问题,依赖于布局算法,图的可读性可能会受到影响。