我使用Graphviz来表示数组,使用subgraphs
和record
个节点:
subgraph cluster_array
{
label="my array"
Array [shape="record", label="A | B | C | D"]
Array
}
我想为每个数组元素添加外部索引,映射0 -> A
,1 -> B
等等。
我想达到类似的结果:
我已在线搜索并尝试使用xlabel
,但无法找到为每个记录元素正确添加标签的方法。我还尝试将索引作为标签的一部分,并使用lp
移动标签,但它似乎对record
节点没有影响。
是否可以使用GraphViz向record
个节点添加外部元素标签?
答案 0 :(得分:3)
对你的问题不是一个真正的答案(我认为,这将是"没有")但是一种可能会给你你想要的解决方法。我使用" parallel"没有边框的记录节点(或确切地说是纸张颜色边框),位于非常靠近并由不可见边连接:
digraph so
{
subgraph cluster0
{
rank = same{ Array notes }
color = white;
Array [ shape = record, label = "{ A | B | C | D }"] ;
notes [ shape = record, color = white, label = "{ a_1 | b_2 | c_3 | d_4 }" ];
Array -> notes[ style = invis ];
}
nodesep = .0;
X -> Array -> Z;
}
产生