我想让下面代码中的箭头向左,但是出现错误。
\begin{tikzcd}
1 \arrow[rr,shift left,"\lambda"]
\arrow[rr,shift right,swap,"\mu"]
&&
3
\end{tikzcd}
答案1
当您执行 时,这意味着从所在的单元格向右两列的单元\arrow[rr]
格绘制一个箭头。代表“右”,两个s 表示向右两列。同样,表示左,表示上下。我假设您尝试过类似 \arrow
r
r
l
u
d
\begin{tikzcd}
1 \arrow[ll,shift left,"\lambda"]
\arrow[ll,shift right,swap,"\mu"]
&&
3
\end{tikzcd}
但这样做不行,因为两个箭头放在第一列,所以左边没有列。要使用,ll
你必须将箭头移到最后一列,即
\begin{tikzcd}
1 && 3
\arrow[ll,shift left,"\lambda"]
\arrow[ll,shift right,swap,"\mu"]
\end{tikzcd}
另一个选项是将leftarrow
选项添加到箭头,同时保留rr
。这会将箭头尖移动到线的开头,而不是结尾。
无关注释:正如 egreg 在下面的评论中提到的那样,使用空列添加空间可能不是最好的方法,最好修改column sep
。您可以给出一个特定的长度(例如)或使用column sep=1cm
预定义键之一(tiny
,,,,)来设置列之间small
的分隔。scriptsize
normal
large
huge
完整的示例,其中包含箭头的两个选项,而column sep=huge
不是空列:
\documentclass[border=5mm]{standalone}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[column sep=huge]
1 &
\arrow[l,shift right,swap,"\lambda"]
\arrow[l,shift left,"\mu"]
3 \\
1
\arrow[r,leftarrow,shift left,"\lambda"]
\arrow[r,leftarrow,shift right,swap,"\mu"]
&
3
\end{tikzcd}
\end{document}