首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Graphviz:如何使用带子图簇的超大图的neato?

Graphviz:如何使用带子图簇的超大图的neato?
EN

Stack Overflow用户
提问于 2019-06-11 13:45:08
回答 1查看 2K关注 0票数 2

我有一个大的,但不是很大(?)图,有13个子图簇,包含约100个节点和3,147个边。

Windows上的点崩溃,Linux上的seg故障。

这个问题建议解决方案是使用neato,而不是dot

但是此页

请注意这里有一些怪癖..。只有DOT和FDP布局方法似乎支持子图。

我的输出是一个巨大的,黑色的意大利面球,无论我放大多远。因此,我删除了所有的消息,除了一条,这表明子网格似乎是嵌套在彼此中的。

它们绝对不是嵌套在源文件中的;下面是一个示例,对商业敏感的名称进行了更改:

代码语言:javascript
复制
digraph G {
       labelloc="t";    // place the label at the top (b seems to be default)
       label="XXX message passing";
         rankdir = "LR"
         newrank = "true"

         subgraph cluster_AAA {
              label="AAA"
              rank="same"

            AAA_1
          }

         subgraph cluster_BBB {
              label="BBB"
              rank="same"

            BBB_1
            BBB_2
          }

         subgraph cluster_CCC {
              label="CCC"
              rank="same"

            CCC_1
            CCC_2
            CCC_3
          }

这似乎在语法上是正确的(后边跟在后面)。

因此,似乎链接的页面是正确的:

只有DOT和FDP布局方法似乎支持子图。

但是,看起来我也需要一个大图的新加藤。

我有什么选择?

我运行了fdp并得到了以下错误消息

错误:节点"xxx“包含在两个不可比较的集群"AAA”和"BBB“中。

这似乎提供了一个线索。是否真的在两个集群中不能使用节点名称?

如果是这样的话,解决方案似乎是在节点名称之前加上集群名称.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-21 12:57:31

所以我没有一个通用的解决办法来解决你的问题。但你看过“火星”吗?这是一个命令行工具,专为使用具有非常大图形的graphviz程序而设计。你可以在这里找到它:https://github.com/marckhoury/mars

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56545184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档