对于需要生成一些图形的C ++项目,建议使用哪种graphviz库API?

时间:2013-04-09 19:10:10

标签: c++ ubuntu graphviz boost-graph

我知道有几个版本的Graphviz作为库。但我有点困惑的是哪一个被认为是当前+推荐。我想从linux GUI应用程序生成并显示一些图表。

根据第22页的http://www.graphviz.org/doc/libgraph/Agraph.pdf,Libgraph被Cgraph取代。但该文件被称为Agraph,我觉得很奇怪。

在第23页,它还说Lgraph是Cgraph的C ++继承者,因为我使用C ++,我想知道更多,但我似乎无法在任何地方找到Lgraph。

也许相关,我确实看到有一个名为BGL的Boost库,它支持导入和导出graphviz文件。寻找关于是否优先使用BGL而不是直接使用Graphviz或Lgraph的意见。

如果我sudo apt-get install libgraphviz-dev我得到Cgraph,它看起来像在Ubuntu上。在这种情况下,这个问题是确认Cgraph是推荐的库,并询问Lgraph或BGL是否值得考虑。

1 个答案:

答案 0 :(得分:2)

BGL不提供Graphviz的交互式界面;如果您需要,您将需要使用Graphviz的本机库之一,如cgraph。 BGL可以读取和输出Graphviz格式的文件,但这看起来并不像你要找的那样;它也有一些自己的布局算法,但它们并不像Graphviz那样复杂。