我如何排版 xymatrix 中包含的图表?

我如何排版 xymatrix 中包含的图表?
\documentclass[10pt]{article}
\usepackage{fancyhdr,graphicx,lastpage}
\usepackage[all]{xy}
\usepackage{listings}
\usepackage{latexsym}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{makeidx}
\makeindex  

\usepackage[a4paper,hmargin=2.5cm,vmargin=2.5cm]{geometry}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\bfdefault}{b}
\usepackage[scaled=0.92]{helvet}
\usepackage{courier}
\normalfont % in case the EC fonts aren't available
\usepackage[T1]{fontenc}
\usepackage{etoolbox}
\makeatletter

\begin{document}
Given categories $\mathbb{A}$ and $\mathbb{B}$ consider the natural transformations:
$\xymatrix{\mathbb{A}\ar@<2ex>[r]^F^{\alpha} \ar[r]_G \ar@<-2ex>[r]_H^{\beta}&\mathbb{B}}$ 
\end{document}$

请帮我在 xymatrix 中排版这个箭头图。这是两个自然变换的垂直组合。

两个自然变换的垂直组合1

答案1

我知道您要求提供一个解决方案xy,但您可能需要考虑一个tikz-cd解决方案。

在此处输入图片描述

以下是代码:

\documentclass{article}

\usepackage{amsfonts}
\usepackage{tikz-cd}

\begin{document}

\[\begin{tikzcd}[row sep=.3cm, column sep=3cm]
\phantom{\mathbb{A}}\arrow[r, "F" description, ""{name=top, below}] & \phantom{\mathbb{B}}\\
\mathbb{A}\arrow[r,"G" description, ""{name=midtop, above}, ""{name=midbot, below}] & \mathbb{B}\\
\phantom{\mathbb{A}}\arrow[r, "H" description, ""{name=bot}] & \phantom{\mathbb{B}}
\arrow[from=top,to=midtop,"\alpha"]
\arrow[from=midbot,to=bot,"\beta"]
\end{tikzcd}\]

\end{document}

这个想法是利用name中心标签上方和下方的空间,以便正确放置垂直箭头。符号\phantom用于保持水平箭头的长度相同。

row sep您可以通过更改和值来根据自己的喜好调整间距column sep

答案2

已更新 1:使用 hacky。

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage[all,cmtip]{xy}

\begin{document}
\xymatrix@R=.8pc@C=8pc{
\mathbb{A}  \ar[r]|G  \ar@<-4ex>[r]_H \ar@<4ex>[r]^F_{\mkern9.8mu\big\downarrow \alpha} \ar@<10.5ex>[d]^{\beta} &\mathbb{B}\\
      &
}
\end{document}

在此处输入图片描述


我无法很好地解释,但从我的示例来看,没有必要使用双美元$\xymatrix这与原始图像相似。我的代码非常简单,因为我不是专家(因为我的水平很低,无法理解文档),您可以看到最小的差异。

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}

\usepackage[all]{xy}


\begin{document}

\xymatrix@1@C=6pc{
\ar[r]^F \ar@<7.9ex>[d]^{\alpha}&\\
\mathbb{A} \ar[r]|G \ar@<7.9ex>[d]^{\beta}& \mathbb{B}\\
\ar[r]_H & 
}

\end{document}

在此处输入图片描述

R这里对于行和列有不同的方法C

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}

\usepackage[all]{xy}


\begin{document}
xymatrix@R=1pc@C=5pc{
\ar[r]^F \ar@<7.2ex>[d]^{\alpha}&\\
\mathbb{A} \ar[r]|G \ar@<7.2ex>[d]^{\beta}& \mathbb{B} \\
\ar[r]_H & 
}
\end{document}

在此处输入图片描述

相关内容