我正在尝试使用宏构建树,但没有得到想要的结果。这是一个最小的示例:
\ documentclass {article}
\ usepackage {tikz}
\ usetikzlibrary {trees}
\ newcommand {\ LeafNode} [1] {%
子{node {#1}}
}
\ newcommand {\ InnerNode} [3] {%
子{节点{#3}
#1
#2
}
}
\ begin {document}
\ begin {tikzpicture}
\ node(A){A}
\ LeafNode {B}
\ LeafNode {C}
;
\ end {tikzpicture}%
\ hspace {2cm}%
\ begin {tikzpicture}
\ node(A){A}
\ InnerNode {\ LeafNode {D}} {\ LeafNode {E}} {B}
\ LeafNode {C}
;
\ end {tikzpicture}
\ end {document}
我期望这会产生两棵树:
A A
///
B C B C
/ \
E
但我得到:
一个
|
乙
| |
D
| |
碳
我是否缺少某些东西或没有办法做?
顺便说一句,如果我在根节点上省略了标签,则会收到PGF错误:
!程序包pgf错误:未知的形状是已知的。
-TSF
最佳答案
这不是您问题的直接答案,但是您可以签出tikz-qtree package。它为创建树提供了更简单的语法。
关于latex - tikz的树木和宏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2008552/