因此,我正在尝试使用 tikzcd 绘制立方体图,但一直存在箭头交叉的问题。以下是相关代码,供参考:
\documentclass[12pt]{standalone}
\usepackage{amssymb}
\usepackage{tikz-cd}
\begin{document}
\begin{center}
\begin{tikzcd}[row sep=scriptsize,column sep=scriptsize,]
\emptyset\ar[rr,hook]\ar[dr,hook] \ar[dd,hook] & & \
{3\}\ar[dr,hook]\ar[dd,hook] & \\
& \{2\}\ar[rr,hook,crossing over] & & \{2,3\}\ar[dd,hook] & \\
\{1\}\ar[rr,hook]\ar[dr,hook]& & \{1,3\}\ar[dr,hook] & \\
& \{1,2\}\ar[rr,hook]\ar[crossing over, hookleftarrow]{uu}{} & & \
{1,2,3\} &
\end{tikzcd}
\end{center}
\end{document}
我试图让左前向下箭头与其他箭头朝同一方向钩住。在书面代码中,它从 出发{1,2}
并指向{2}
,因为我希望它越过后箭头,而以另一种方式编写会使它在越过的箭头之前绘制(因此会错过交叉处的空白)。我的解决方法是从下到上使用钩箭头,但使用hookleftarrow
使其朝相反方向移动。不幸的是,它导致箭头“卷曲”朝另一个方向移动。有什么想法可以解决这个问题吗?
我已阅读了
tikz-cd 中箭头的延迟绘制。但是,我无法让主要部分工作(主要是通过定义\laterarrow
)。是否有“翻转”命令tikz-cd
可以让我翻转箭头的长轴?任何帮助都值得感激。
答案1
如果你喜欢 hacking 方法... 这里是:
% arara: pdflatex
\documentclass{standalone}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[%
,row sep=scriptsize
,column sep=scriptsize
]
\emptyset\ar[rr,hook]\ar[dr,hook] \ar[dd,hook] & & \{3\}\ar[dr,hook]\ar[dd,hook] & \\
& \{2\}\ar[rr,hook,crossing over]\arrow[hook]{dd} & & \{2,3\}\ar[dd,hook] & \\
\{1\}\ar[rr,hook]\ar[dr,hook]& & \{1,3\}\ar[dr,hook] & \\
& \{1,2\}\ar[rr,hook]\ar[crossing over,dash,shorten <= 3mm,shorten >= 3mm]{uu} & & \{1,2,3\} &
\end{tikzcd}
\end{document}