Igraph库中有许多图形布局算法,但您可能会发现它“过于复杂”。它是用C语言编写的,因此可以将其嵌入到C、C++或Objective C应用程序中。具体而言,在树形绘图方面,我会使用Reingold-Tilford布局算法。或者,您可以选择Sugiyama布局(请参见此PDF的第5章),但我不知道是否有任何开源的C/C++实现,因此您必须自己编写。顺便说一句,当GraphViz绘制分层图时,它使用了Sugiyama风格的布局。免责声明:我是igraph的作者之一。
AT&T的Graphviz可以自动布局图形,做得非常好。你为什么认为它很复杂?你只需要创建一个适当类型的输入文件即可。我无法想象有比这更简单的工具了。 我建议你再看一眼-你会发现它很值得。如果有比这更容易的工具,我会感到惊讶-你只需要提供数据。