1

我正在用语言制作某种超级简化的类图。该图仅包含具有类名、继承和聚合的简单节点。

为了有一个特定的继承边缘样式,并在其父类下方显示子类,我使用以下设置:

subgraph inheritance {
    edge[dir="back"; arrowtail="empty"; arrowsize="1.75"];
    color=white;

    subgraph clusterExpression{
        Expression -> VariableExpression;
        Expression -> AssignmentExpression;

一切正常,但是当我有很多子类时,我的图表变得非常宽。我不在乎子类是否处于同一级别。

有没有办法以最紧凑的方式显示超类之下的所有子类?而不是这个:在此处输入图像描述

我想得到这样的东西: 在此处输入图像描述

4

1 回答 1

2

您可以尝试使用名为unflatten的 graphviz 工具:

unflatten 是 dot 的预处理器,用于提高具有许多叶子或断开节点的图的纵横比。这种图表的通常布局通常非常宽或高。unflatten 插入不可见的边缘或调整边缘上的 minlen 以改善布局压缩。

您可以将其通过管道传输到命令行中 - 有关示例,请参见这些 答案

于 2013-02-28T16:58:50.210 回答