我想显示指向节点a
的节点b
。 b
位于子图中。
以下dot graphviz代码应该可以工作。
digraph
{
a;
subgraph cluster_mysubgraph
{
a->b;
}
}
唉,虽然节点a
在任何子图之外声明,但它在mysubgraph
内呈现(在Ubuntu 14.04上的graphviz 2.36.0上观察):
我尝试过预先声明b
之类的变体。没有成功。
解决方法是在另一个群集子图中声明a
。
digraph
{
subgraph cluster_pseudo
{
a;
}
subgraph cluster_mysubgraph
{
a->b;
}
}
这可以防止a
出现在mysubgraph
内,但另一个子图实际上不是一个选项。
a
应该在任何子图之外。
答案 0 :(得分:3)
看起来如下工作:
digraph
{
a;
subgraph cluster_mysubgraph
{
b;
}
a->b;
}
所以,可能会有一些规则,如:“在子图中声明节点,要小心在子图中声明边缘,因为这会使节点附加到该子图(除非它们已经附加到另一个子图上)”。
可能是这样,但是当生成点文件时,更容易在一次传递中生成节点和边缘,在我的情况下,在同一子图中声明节点和边缘。