根据箭头绘制命令的顺序,箭头会消失

根据箭头绘制命令的顺序,箭头会消失

最小工作示例:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows, positioning}

\begin{document}
    \begin{tikzpicture}
        \draw
        node[draw](A){A}
        node[draw,right=of A](S){S}
        node[draw,right=of A,above=of S](B){B};

        \draw[->]
        (A) |- (B)
        (S) -- +(0,-1) -| (A);
    \end{tikzpicture}
\end{document}

节点的位置完全符合我的要求。但是从 A 到 B 的箭头的箭头尖不见了。

我还注意到,当我将从 S 到 A 绘制箭头的命令移到从 A 到 B 绘制箭头的命令上方时,从 S 到 A 的箭头的箭头尖就会消失。

为什么会发生这种情况?我该如何解决?

答案1

我希望我已经理解了你的问题。同一张图片有两个不同的代码。

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows, positioning}

\begin{document}
    \begin{tikzpicture}
        \draw
        node[draw](A){A}
        node[draw,right=of A](S){S}
        node[draw,right=of A,above=of S](B){B};
        \draw[->] (A)|- (B);
        \draw[->](S) -- +(0,-1) -| (A);
    \end{tikzpicture}
\end{document}

问题是缺少了\draw[->]。您也可以将您的代码与我的两个代码进行比较。

在此处输入图片描述

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows, positioning}

\begin{document}
    \begin{tikzpicture}
        \draw
        node[draw](A){A}
        node[draw,right=of A](S){S}
        node[draw,right=of A,above=of S](B){B};

        \draw[->]
        (A) |- (B);
        \draw[->](S) -- +(0,-1) -| (A);
    \end{tikzpicture}
\end{document}

相关内容