根据这个答案:TikZ:使用“子”符号将边变成箭头
可以使用键设置节点/子符号的边样式edges from parent/.style
。
但是,如果我使用binary tree layout
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphdrawing}
\usegdlibrary{trees}
\begin{document}
\begin{tikzpicture}[
binary tree layout,
edge from parent/.style={->, thick},
]
\node {a}
child{node {b} }
child{node {c} }
;
\end{tikzpicture}
\end{document}
我怎样才能设计边缘binary tree layout
答案1
如果您正在使用 Lua 图形绘制工具,为什么不使用图形语法呢?
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,graphdrawing}
\usegdlibrary{trees}
\begin{document}
\tikz\graph [binary tree layout] { a -> {b, c}};
\end{document}
要设置边的样式,您只需将信息添加到图形规范中即可。例如:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs,graphdrawing}
\usegdlibrary{trees}
\begin{document}
\tikz\graph [binary tree layout, edges={thick}] { a -> {b, c}};
\end{document}
node
请注意,如果您更喜欢使用标准/语法指定图表child
,那么您实际上并没有使用该graphs
库,尽管您仍然可以使用该graphdrawing
库(见下文)。在这种情况下,可能更容易放弃binary tree layout
并自己指定树的形状。在这种情况下,只需放弃图形和图形绘制内容:
\documentclass[tikz,border=10pt]{standalone}
\begin{document}
\begin{tikzpicture}[
edge from parent/.style={draw, ->, thick},
]
\node {a}
child{node {b} }
child{node {c} }
;
\end{tikzpicture}
\end{document}
输出非常相似:
您还可以使用graphdrawing
更标准语法的库。在这种情况下,您可以使用 将样式应用于边缘every edge/.style={}
。但是,指定->
显然没有效果:
\documentclass[tikz,border=10pt]{standalone}
\usetikzlibrary{graphdrawing}
\usegdlibrary{trees}
\begin{document}
\begin{tikzpicture}
[binary tree layout, every edge/.style={draw=blue, thick, ->}]
\node {a}
child{node {b} }
child{node {c} }
;
\end{tikzpicture}
\end{document}
据推测对此有一些解决方法,但我的简短实验并没有发现它。