我使用隐形箭头创建了下图,我想知道是否有其他不使用它们的解决方案。
\documentclass{article}
\usepackage[all]{xy}
\newdir{:=}{{}} %creates an empty shaft directional, the ":=" is chosen "randomly"
\begin{document}
\[
\xymatrix{A\ar@/^{1pc}/[dd]^{a}="a"\ar@/_{1pc}/[dd]_{b}="b" & \ar@{:=}@/^{2.0pc}/[dd]^{{}}="a"\ar@{:=}@/_{3.8pc}/[dd]^{{}}="b"\ar@/^{1.5pc}/@{=>}^{X}"b";"a" & A'\ar@/^{1pc}/[dd]^{a'}="a"\ar@/_{1pc}/[dd]_{b'}="b"\\
\\
B & & B'
}
\]
\end{document}
由此得出下图:
答案1
您可以简单地命名现有箭头的标签,然后在它们之间画一个箭头。
请注意,您的代码实际上正在执行此操作,但随后您创建了一个不可见的箭头,并将其重命名为相同的名称("a"
)。这有点奇怪。
这是一个解决方案:
\documentclass{article}
\usepackage[all]{xy}
\begin{document}
\[
\xymatrix@=1.5cm{
Fx\ar@{..>}[r]^{\eta(x)}
\ar@/^1pc/[d]^{Fg}="a" \ar@/_1pc/[d]_{Fg'}="c"
& \tilde Fx\ar@/^1pc/[d]^{\tilde Fg}="b" \ar@/_1pc/[d]_{\tilde Fg'}="d"\\
%
Fy \ar@{..>}[r]^{\eta(y)}& \tilde Fy
\ar@{=>}@/_1pc/"a";"b"
\ar@{=>}@/^1pc/"c";"d"
}
\]
\end{document}
结果如下:
还请注意,您可以使用 选择图表的行和列的大小\xymatrix@=<dimension>
。这比将所有列和行加倍更优雅。