如何使用 TikZ 在交换图中绘制平行箭头?

如何使用 TikZ 在交换图中绘制平行箭头?

如何使用 TikZ 在交换图中绘制具有相同域和相同余域的两个平行箭头?就此而言,如何在两个节点之间绘制任何类型的平行路径?我是否需要自己明确地移动这两条路径?如果需要,该怎么做?

答案1

除此之外,postaction还有两种方法:

\documentclass{article}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
    \node (A) at (0,0) {$A$};
    \node (B) at (1,0) {$B$};
    \draw[transform canvas={yshift=0.3ex},->] (A) -- (B);
    \draw[transform canvas={yshift=-0.3ex},<-] (A) -- (B);
\end{tikzpicture} 

\begin{tikzpicture}
    \node (A) at (0,0) {$A$};
    \node (B) at (1,0) {$B$};
    \draw[->] (A.10) -- (B.170);
    \draw[<-] (A.350) -- (B.190);
\end{tikzpicture} 

\end{document}

请注意,您需要transform canvas像使用“正常”变换一样保持节点固定。该(A.10)语法表示 A 边界上的一个点,与 逆时针旋转 10 度(A.east)

答案2

同样,您可以使用路径连接两个节点:

\begin{tikzpicture}[->]
\node (A) at (0,0) {$A$};
\node (B) at (1,0) {$B$};
\path [black] (A.10) edge [bend left] node {} (B.170);
\path [black] (B.190) edge [bend left] node {} (A.350);
\end{tikzpicture} 

这允许使用路径的所有特征(例如弯曲特征)。

答案3

使用后续动作怎么样?

\begin{tikzpicture}
\draw[postaction={transform canvas={yshift=-2mm},draw}]
[->] (0,0) -- (1,0);
\end{tikzpicture}

相关内容