调整标签与箭头的间距 {yshift=1mm}
\begin{tikzcd}
FX \arrow[r, "\tiny\begin{pmatrix}
\mathrm{Id}_{FX}\\\mathrm{Id}_{FX}
\end{pmatrix}" {yshift=1mm}] \arrow[d, equal] & FX \oplus FX \arrow[r] \arrow[d, "{(Fe_1, Fe_2)}"] & FY \arrow[d, equal] \\
FX \arrow[r] & F(X \oplus X) \arrow[r] & FY
\end{tikzcd}
调整行间距和列间距
\begin{tikzcd}[column sep=1.5cm, row sep=1cm]
\end{tikzcd}
两种经典的三角形交换图:直角式和钝角式
\begin{tikzcd}
X_i \arrow[r, "e_i"] \arrow[rd, "f_i"'] & X_1 \oplus X_2 \arrow[d, "h"] \\
& Y
\end{tikzcd}
\[
\begin{tikzcd}
X_i \arrow[rr, "e_i"] \arrow[dr, "f_i"'] & & X_1 \oplus X_2 \arrow[dl, "h"] \\
& Y &
\end{tikzcd}
\]
单射和满射
\arrow[ur,hookrightarrow, "m"'] \arrow[dr, two heads, "f"']
虚线
\arrow[d, "\alpha_n", dashed]
缩短箭头
\arrow[r, shorten >=5pt] \arrow[r, shorten >=7pt] &\!\!\!\!\!
有些标签必须加花括号
\arrow[r, "{(x^r,M)}"]
报错要么是缺少宏包,要么是标签没加花括号
让人疑惑的代码
\begin{tikzcd}[column sep=.6cm]
& & \mathrm{Ker}\pi \arrow[dr,hook] & \\
\dotsb \arrow[r] & P_1 \arrow[ur, two heads] \arrow[rr, "d_0"] & & P_0 \arrow[r, "\pi"] & M \arrow[r] & 0
\end{tikzcd}
drr
\begin{tikzcd}
X \arrow[d, "f"'] \arrow[dr, dashed, "F"] \arrow[drr, dashed, bend left, "G"'] & & \\
Y \arrow[dr, dashed, "F"] \arrow[drr, dashed, bend right=60, "G"'] & FX \arrow[r, "\eta_X"] \arrow[d, "Ff"] & GX \arrow[d, "Gf"] \\
& FY \arrow[r, "\eta_Y"'] & GY
\end{tikzcd}
反向双箭头
\begin{tikzcd}
0 \arrow[r] & P_d \arrow[d, "\alpha_d"', shift right]\arrow[r,"t_d"] & P_{d-1} \arrow[d, "\alpha_t"', shift right] \arrow[r] & \cdots \arrow[r] &P_0 \arrow[d, "\alpha_0"', shift right] \arrow[r]&0 \\
0 \arrow[r] & 0 \arrow[u, "\beta_d"',shift right] \arrow[r] & Q_{d-1} \arrow[u, "\beta_t"',shift right] \arrow[r] & \cdots \arrow[r] &Q_0 \arrow[u, "\beta_0"',shift right] \arrow[r] &0
\end{tikzcd}
标签微调位置
\arrow[dr, dashed, "{\tilde{f}}"{near start, yshift=-1mm, xshift=1mm} ]