We don’t allow questions seeking recommendations for software libraries, tutorials, tools, books, or other off-site resources. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
igraph 库有很多图形的布局算法,尽管您可能也会发现它“过于复杂”。它是用 C 编写的,因此您可以将其嵌入到 C、C++ 或 Objective C 应用程序中。
具体来说,对于树绘制,我将使用 Reingold-Tilford 布局算法。或者,您可以选择 Sugiyama 布局(请参阅此 PDF 中的第 5 章),但我不知道有任何开源 C/C++ 实现,所以你必须自己推出。顺便说一句,GraphViz 在绘制分层图时使用 Sugiyama 风格的布局。
免责声明:我是 igraph 的作者之一。
The igraph library has quite a few layout algorithms for graphs, although you might also find it "overly complex". It's written in C, so you can embed it in C, C++ or Objective C apps.
Specifically, for tree drawing, I would use the Reingold-Tilford layout algorithm. Alternatively, you can go for the Sugiyama layout (see Chapter 5 in this PDF), but I am not aware of any open source C/C++ implementation for that, so you have to roll your own. Incidentally, a Sugiyama-style layout is used by GraphViz when it draws layered graphs.
Disclaimer: I am one of the authors of igraph.
AT&T 的 Graphviz 自动布置图表并且做得非常好。为什么你认为它很复杂?您所要做的就是创建适当类型的输入文件。我无法想象更简单的事情。
我建议你再看一下——你会发现这是值得的。如果有一个更简单的工具,我会感到惊讶 - 您所要做的就是提供数据。
AT&T's Graphviz lays out graphs automatically and does a very good job. Why do you think it's complex? All you have to do is create an input file of the appropriate type. I can't imaging something simpler.
I'd advise you to give it another look - you'll find it's worth it. I'll be surprised if there's a tool that much easier - all you have to do is give the data.
还有 GDToolkit (Graph Drawing Toolkit)
但它没有免费许可证,正如我刚才所看到的:(
There is also GDToolkit (Graph Drawing Toolkit)
But it doesn't have a free licence, as I see just now :(