gpt4 book ai didi

graphviz - 具有大(子)集群的图形的隐点错误消息

转载 作者:行者123 更新时间:2023-12-04 05:38:37 25 4
gpt4 key购买 nike

我写了一个小工具转储(以 dot 格式)一个项目的依赖关系图,其中所有位于同一目录中的文件都聚集在一个集群中。当我尝试生成包含相应图形的 pdf 时,dot开始哭:

命令 dot -Tpdf trimmedgraph.dot -o graph.pdf产生神秘的错误信息 Error: install_in_rank clusterReals virtual rank 21 i = 0 an = 0这不会在谷歌上产生任何结果。

我试图编辑 trimmedgraph.dot手动:转动子图 clusterReals进入 Reals生成一个可以编译的文件,但包含我 Reals/ 的所有内容目录显然不再收集了。

有没有办法只生成点有效文件(我计划最终将我的补丁发送到上游,但如果我不能保证一切都会好起来......)?

我已经把两个版本的trimmedgraph.dot online但它们相当大,而且我不知道问题出在哪里,我真的无法想出一个最小的文件来重新创建问题。

最佳答案

我认为(但找不到任何关于此的文档)集群名称必须是唯一的 在整个点文件中。但是,在您的文件中,有两个子图名为 clusterReals .

解决方案是确保所有集群名称都是唯一的 - 由于名称不会出现在输出中的任何位置,因此您可以在生成点文件时使用数字。

一个快速测试表明,重用相同的集群名称时会发生奇怪的事情:

digraph dependencies {
subgraph cluster0 {
label="First cluster 0";
Node1;
subgraph cluster0 {
label="Second cluster 0";
Node2;
}
}
subgraph cluster0 {
label="Third cluster 0";
Node3;
}
subgraph cluster1 {
label="Cluster 1";
Node4;
subgraph cluster0 {
label="Fourth cluster 0";
Node5;
}
}
}

graphviz output

所有 cluster0似乎合并在一起(节点,标签),除非因为它们被其他集群包含而不可能。至少它看起来是这样......由于后果是不可预测的(在你的情况下是错误的),我会尝试总是使用唯一的集群名称。

关于graphviz - 具有大(子)集群的图形的隐点错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11584771/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com