![tikz-cd 中的箭头不对称](https://linux22.com/image/372424/tikz-cd%20%E4%B8%AD%E7%9A%84%E7%AE%AD%E5%A4%B4%E4%B8%8D%E5%AF%B9%E7%A7%B0.png)
所以我有这个代码:
\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}
\usetikzlibrary{decorations.markings}
\tikzset{negated/.style = {
decoration={markings,
mark = at position 0.5 with {
\node[transform shape] (tempnode) {$\backslash$};
}
},
postaction={decorate}
}
}
\begin{figure}
\centering
\begin{tikzcd} {} & \quad LY\text{-chaos} \\
AY\text{-chaos} \arrow[Rightarrow, shift left = 0.5ex]{r} \arrow[Rightarrow, shift left = 0.6ex]{dr} \arrow[Leftarrow, shift left = -1.2ex, negated]{dr} \arrow[Leftarrow, shift left = 1.2ex, negated]{ur} \arrow[Rightarrow, shift left = -0.6ex]{ur} & D\text{-chaos} \arrow[Rightarrow, shift left = 0.7ex]{l} \\
{} & T\text{-chaos}
\end{tikzcd}
\end{figure}
\end{document}
问题在于从 AY-chaos 到 LY-chaos 和 T-chaos 的箭头不是从同一点(在 x 轴上)开始的。
答案1
这里的问题是 Ti钾Z 尝试变得聪明并将箭头分布在节点周围。
您可以通过让节点更高来智取它,这样箭头将仅固定在节点的侧面。要使节点更高,请使用 键minimum height
。
然而,更大的问题是每个节点有两个箭头,因此您必须做一些手动劳动才能使其看起来正确。
我还将节点的宽度设为相同,以minimum width
保持一致性。
AY-chaos
最后,我在、LY-chaos
和中的连字符前添加了一个小的字距调整,T-chaos
使其看起来像一个东西。
有一件事需要您考虑:没有办法让箭头从相同的 X 坐标开始,而不会让它们太远,因为它们位于节点的东侧AY-chaos
,或者不会让它们太拥挤。有一种想法可以让它看起来更好,那就是如果您以某种方式使节点AY-chaos
(甚至其他节点)在视觉上更高,也许绘制方框或添加左括号...只是一个想法 :)
无论如何,这里是:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz}
\usepackage{tikz-cd}
\usetikzlibrary{decorations.markings}
\begin{document}
\pagenumbering{gobble}
\tikzset{negated/.style = {
decoration={markings,
mark = at position 0.5 with {
\node[transform shape] (tempnode) {$\backslash$};
}
},
postaction={decorate}
}
}
\begin{figure}
\centering
\begin{tikzcd}[cells={nodes={minimum height=1.0cm,minimum width=1.7cm}},column sep=4em,row sep=0pt]
& LY\kern-0.5ex\text{-chaos} \\
AY\kern-0.5ex\text{-chaos}
\arrow[Leftarrow , start anchor=north east,
end anchor={[yshift= 0.2cm]}, negated]{ur}
\arrow[Rightarrow, start anchor={[yshift= 0.5ex]},
end anchor={[yshift= 0.2cm]south west}]{ur}
\arrow[Rightarrow, yshift=-0.7ex]{r}
\arrow[Leftarrow , yshift= 0.7ex]{r}
\arrow[Rightarrow, start anchor={[yshift=-0.5ex]},
end anchor={[yshift=-0.2cm]north west}]{dr}
\arrow[Leftarrow , start anchor=south east,
end anchor={[yshift=-0.2cm]}, negated]{dr}
& D\text{-chaos} \\
& T\kern-0.5ex\text{-chaos}
\end{tikzcd}
\end{figure}
\end{document}