我有一个常量xymatrix
,其中箭头从单元格 1-1 指向单元格 2-1。
现在,如果我决定将单元格 2-1 的内容移动到单元格 2-2,我希望箭头“跟随内容”,即从 1-1 移动到 2-2,而我不需要实际修改箭头。
我的代码:
\xymatrix{ A \ar[d] & B \\ C & }
当我将内容 C 移动到单元格 2-2 时,我得到了这个,并且箭头指向空单元格:
\xymatrix{ A \ar[d] & B\\ & C }
有什么方法可以让箭头跟随内容?
答案1
使用tikz-cd
非常简单,只需为目标节点(在我的 MWE 中Z
)提供一个别名,放在|[alias=<alias>]|
单元格内容之前,然后to=<alias>
作为选项添加到该节点的任何箭头。
请参阅tikz-cd 手册。
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
A \ar[to=Z] & B \\
|[alias=Z]|C & \\
\end{tikzcd}
\begin{tikzcd}
A \ar[to=Z] & B \\
& |[alias=Z]|C\\
\end{tikzcd}
\end{document}
答案2
使用pstricks
,只需为 的节点命名psmatrix
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{pst-node}
\usepackage{auto-pst-pdf}% for compilation with pdflatex
\begin{document}
\psset{linewidth = 0.5pt, arrows = ->, arrowinset = 0.12, nodesep = 2pt, colsep = 1.25cm, rowsep =0.9cm}
\begin{psmatrix}
[name = A] A & [name = B] B \\
& [name = C] C
%% arrows
\ncline{A}{C}
\ncline{C}{B}
\end{psmatrix}
\hspace{1.5cm}
\begin{psmatrix}
[name = A] A & [name = B] B \\
[name = C] C
%% arrows
\ncline{A}{C}
\ncline{C}{B}
\end{psmatrix}
\end{document}