这是我想要绘制的图形:
在上图中,这些线应该是向右的箭头或向下的箭头。
这是我正在使用的代码(无效)
\documentclass{article}
%\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz-cd}
\usepackage{mathtools, amssymb}
\usepackage{pst-node, auto-pst-pdf}
\begin{document}
\[
\begin{tikzcd}[sep=large]
M \rar \dar["\mathrm{Pinch}" ' ] \arrow[dr, dashed, "\beta_1 + \beta_2 + \beta_3 = 0", sloped] & * \rar \dar & \Sigma M \dar \rar & \Sigma M \dar \\%
M \vee M \vee M \rar[swap, "{(\beta_1 , \beta_2 , \beta_3)}" ] & N \rar & N' \rar & \Sigma M \vee \Sigma M \vee \Sigma M \rar[swap, "{(\beta_1 , \beta_2 , \beta_3)}" ] & N \rar & N' \rar & \Sigma M \vee \Sigma M \vee \Sigma M
\end{tikzcd}
\]
\end{document}
我在这里问了问题如何制作一个包含 16 个矩形且占用不超过半页的交换图?但我仍然不知道该怎么做。
任何帮助将不胜感激!
答案1
这里有一个建议:trail off
键(使用right
或left
)将沿给定方向绘制一个逐渐消失的箭头。
由于图表的第二部分位于同一tikzcd
环境中,因此列将对齐。如果不希望这样,只需使用多个tikzcd
环境即可。
代码
\documentclass[tikz]{standalone}
\usetikzlibrary{cd}
\tikzcdset{
trail off main/.style 2 args={
/tikz/arrows=-,
/tikz/dash pattern=on 3.5mm off 1mm on 1.5mm off 1mm
on .5mm off .75mm on .5mm off .75mm,
start anchor={#1}, to path={-- ++ (#2:1cm)\tikztonodes}},
trail off/.default=right, trail off/.is choice,
trail off/right/.style={trail off main={east}{right}},
trail off/left/.style={trail off main={west}{left}}}
\begin{document}
\begin{tikzcd}[row sep=large, column sep={7em,between origins}]
M \rar
\dar["Pinch"' math mode=false]
\arrow[dr, dashed, "\beta_1 + \beta_2 + \beta_3 = 0", sloped]
& * \rar \dar
& \Sigma M \dar \rar
& \Sigma M \dar \ar[trail off]
\\
M \vee M \vee M \rar["{(\beta_1 , \beta_2 , \beta_3)}"']
& N \rar
& N' \rar
& \Sigma M \vee \Sigma M \vee \Sigma M
\ar[trail off,"{(\beta_1 , \beta_2 , \beta_3)}"']
\\
% now comes the right part below it
\ar[trail off=left, <-] X \rar \dar & A \rar \dar & B \dar
\\
\ar[trail off=left, <-, "{(\beta_1 , \beta_2 , \beta_3)}"']
N \rar
& N' \rar & \Sigma M \vee \Sigma M \vee \Sigma M
\end{tikzcd}
\end{document}