【发布时间】:2012-09-23 20:00:40
【问题描述】:
我是 graphviz 和 DOT 语言的新手。我正在尝试使用集群 subgprahs 生成图表。但是,当我有集群时,每个集群都在脚本中精确指定了节点位置,graphviz 不会生成集群的轮廓框或标签! 具体来说,如果我有以下 DOT 脚本:
digraph G{
subgraph cluster0{
label="Cluster 0"
a->b
}
subgraph cluster1{
label="Cluster 1"
c->d
}
}
那么生成的图形是:
但是,使用以下 DOT 脚本,我在其中准确指定了 4 个节点的节点位置:
digraph G{
subgraph cluster0{
label = "Cluster 0"
a[pos="10,200"]
b[pos="100,200"]
a->b
}
subgraph cluster1{
label = "Cluster 1"
c[pos="10,100"]
d[pos="100,100"]
c->d
}
}
生成的图表是:
请注意,在这种情况下,集群的轮廓框和集群的标签都不会打印!在这种情况下,如您所见,两个集群之间有明显的分界线 - 集群不重叠,所以原则上 graphviz 显示它们应该没有问题,对吗?
无论如何,我如何告诉 graphviz 绘制集群轮廓框和标签? 对此的任何帮助将不胜感激!
谢谢!
【问题讨论】:
-
它对我有用。你用的是什么版本的点?您使用什么命令进行转换?
-
我的 dot 版本:dot - graphviz 版本 2.28.0 (20120313.1216)。我用于创建图形的命令:dot -Tpdf -O filename.dot
-
您确定它会为您产生预期的输出吗?如在给定 pos 值的情况下,节点的排列是否符合预期?你能显示你得到的输出吗……那真的很有帮助!谢谢!
-
这里是 pdf 文件:filedropper.com/trialdot 我使用的源与你的非工作案例完全相同。
-
刚刚看到您的 pdf...如您所见,当您考虑到节点的相对位置类型时,这不是预期的输出,因为我希望使用 pos 值。这正是我得到的输出,也与我的问题中的第一个代码片段产生的输出相同(即,节点没有任何 pos 值),但我想要的是集群问题中的第二张图片标题等
标签: graph graphviz dot graph-visualization