如何使用 GraphViz 绘制集合枚举树?

How to draw a set-enumeration tree with GraphViz?

我期待使用 GraphViz 绘制集合枚举树,它应该如下所示:

使用 GraphViz 可以轻松完成吗?是否有现有的 graphviz 示例来生成这样的树?

完全天真的方法近乎完美。如果出于某种原因 graphviz 确实弄乱了水平排序,则没有真正的解决方案。

digraph {
 node [shape=plaintext]

 "{}" -> "{1}"
 "{}" -> "{2}"
 "{}" -> "{3}"
 "{}" -> "{4}"

 "{1}" -> "{1,2}"
 "{1}" -> "{1,3}"
 "{1}" -> "{1,4}"

 // ...
}

给予