在 DiagrammeR 中对齐节点文本

Justify node text in DiagrammeR

有谁知道 DiagrammeR 目前在使用 GraphViz 时是否支持节点标签的左对齐和右对齐?

这是一个简单的例子,我想在两个节点中左对齐文本:

library(DiagrammeR)
grViz("
  digraph test {
    graph [fontsize = 10]

    node [shape = box]
    A [label = 'Foo\nBar']
    B [label = 'Bar\nFoo']

    A -> B
  }
")

我能够为原生 GraphViz 找到一个资源 here,它使用 /l 进行左对齐,但是当我在 grViz 函数中尝试时,我收到一个错误.例如:

library(DiagrammeR)
grViz("
digraph test {
  graph [fontsize = 10]

  node [shape = box]
    A [label = 'Foo\lBar']
    B [label = 'Bar\lFoo']

  A -> B
}
")

在此先感谢您的帮助!

您需要双反斜杠来转义第一个斜杠。这是左右对齐的标签:

grViz("
  digraph test {
    graph [fontsize = 10]

    node [shape = box]
    A [label = 'Foo\lBar\l']
    B [label = 'Bar\rFoo\r']

    A -> B
  }
")