我知道有几个版本的 Graphviz 作为库。但是我对哪个被认为是当前+推荐有点困惑。我想从 Linux GUI 应用程序生成并显示一些图形。
根据 http://www.graphviz.org/doc/libgraph/Agraph.pdf在第 22 页,Libgraph 被 Cgraph 取代。但是这个文档叫做Agraph,我觉得很奇怪。
在第 23 页上,它还说 Lgraph 是 Cgraph 的 C++ 继承者,并且由于我使用的是 C++,所以我很想知道更多,但我似乎无法在任何地方找到 Lgraph。
也许相关,我确实看到有一个名为 BGL 的 Boost 库,它支持导入和导出 graphviz 文件。寻找关于直接使用 BGL 而不是 Graphviz 还是 Lgraph 更可取的意见。
在 Ubuntu 上,如果我 sudo apt-get install libgraphviz-dev
我会得到 Cgraph。在这种情况下,这个问题要么确认 Cgraph 是推荐的库,要么询问 Lgraph 或 BGL 是否值得考虑。
最佳答案
BGL 不提供与 Graphviz 的交互界面;如果需要,您将需要使用 Graphviz 的原生库之一,例如 cgraph。 BGL 可以读取和输出 Graphviz 格式的文件,但这似乎不是您要找的;它也有一些自己的布局算法,但它们不像 Graphviz 中的算法那么复杂。
关于c++ - 对于需要生成一些图形的 C++ 项目,推荐使用哪个 graphviz 库 API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15910527/