alignment - 使graphviz节点左对齐

标签 alignment graphviz dot

我希望第二列(C和E)中的节点左对齐,而不是居中对齐。

digraph left {
    graph [rankdir="LR", splines=ortho];
    node [shape=record];

    l1 [label="A\l|B\l"];
    l2 [label="C\l|short\l"];
    l3 [label="E\l|long long text\l"];

    l1 -> l2;
    l1 -> l3;
}

我看过this question

但是建议的对节点使用恒定宽度的方法不适合我。我想根据相应的标签宽度将它们设置为不同的宽度。

最佳答案

似乎在所有情况下,图中的节点位置都是从其中心计算得出的。在没有其他实现之前,实现“对齐”外观的唯一方法是使用合适的宽度。

digraph left {
    graph [rankdir=LR splines=ortho]
    node [shape=record]

    l1 [label="A\l|B\l"]
    l2 [label="C\l|short\l" width=1.3]
    l3 [label="E\l|long long text\l"]

    l1 -> l2
    l1 -> l3
}

结果是:
enter image description here

关于alignment - 使graphviz节点左对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26541591/

相关文章:

html - 将表单元素移动到它们看起来堆叠的位置

html - 为什么我的段落与我的图像不正确对齐?

graph - 如何使用 Dot 和 Graphviz 循环布局完整的图形?

graphviz - 如何在 Graphviz 中设置 Cluster 字体属性?

graphviz - 如何避免 Graphviz 点布局浪费空间,不同大小的节点处于同一等级?

java - 将一些节点放在Dot中的同一级别上

graph - 可视化具有大约 500 个节点的二分图

html - 如何在可变高度的 div 中垂直居中可变高度的 div?

python - 如何在使用graphviz渲染的图形中获取节点坐标

r - 如何水平对齐图(ggplot2)?