xypic:在 LyX 中粘贴图表

xypic:在 LyX 中粘贴图表

我无法找到有关如何使用\compositemapxypic 的 2cell 功能的详细说明,我想制作(相对简单的)粘贴图表。特别是,我想排版晶须状操作,其中交换正方形的顶点之间有一个对角双箭头。

另外,在 LyX 中,有没有办法反转 xypic 中 2cells 中双箭头的方向?

在此处输入图片描述

救命啊!

答案1

我也推荐tikz-cd。不过这里有一个 Xy-pic 版本。

\documentclass{article}
\usepackage{amsmath}
\usepackage[all,cmtip]{xy}

\begin{document}
\[
\begin{gathered}
\xymatrix@C+3em@R+3em{
  V_1 \ar[r]^{\rho_1(g)} \ar[d]_{\phi} &
  V_1 \ar[r]^{\rho_1(g')} \ar[d]^{\phi} &
  V_1 \ar[d]^{\phi} \\
  V_2 \ar[r]_{\rho_2(g)} \ar@{=>}[ur]^{\phi(g)} &
  V_2 \ar[r]_{\rho_2(g')} \ar@{=>}[ur]^{\phi(g')} &
  V_2
}
\end{gathered}
=
\begin{gathered}
\xymatrix@C+3em@R+3em{
  V_1 \ar[r]^{\rho_1(g'g)} \ar[d]_{\phi} &
  V_1 \ar[d]^{\phi} \\
  V_2 \ar[r]_{\rho_2(g'g)} \ar@{=>}[ur]^{\phi(g'g)} &
  V_2
}
\end{gathered}
\]
\end{document}

在此处输入图片描述

这是带有缩短箭头的

\documentclass{article}
\usepackage{amsmath}
\usepackage[all,cmtip,2cell]{xy}

\newdir{S}{{}*!/-4em/@{=}}
\newdir{>S}{!/-4em/@{}*@{=>}}

\begin{document}
\[
\begin{gathered}
\xymatrix@C+3em@R+3em{
  V_1 \ar[r]^{\rho_1(g)} \ar[d]_{\phi} &
  V_1 \ar[r]^{\rho_1(g')} \ar[d]^{\phi} &
  V_1 \ar[d]^{\phi} \\
  V_2 \ar[r]_{\rho_2(g)} \ar@2{S->S}[ur]^{\phi(g)} &
  V_2 \ar[r]_{\rho_2(g')} \ar@2{S->S}[ur]^{\phi(g')} &
  V_2
}
\end{gathered}
=
\begin{gathered}
\xymatrix@C+3em@R+3em{
  V_1 \ar[r]^{\rho_1(g'g)} \ar[d]_{\phi} &
  V_1 \ar[d]^{\phi} \\
  V_2 \ar[r]_{\rho_2(g'g)} \ar@2{S->S}[ur]^{\phi(g'g)} &
  V_2
}
\end{gathered}
\]
\end{document}

在此处输入图片描述

答案2

我知道你特别要求xy-pic解决方案,但是,这里有一个可能性,使用更现代、更强大的tikz-cd包裹:

在此处输入图片描述

代码:

% 虽然你明确要求使用 xy 解决方案,但可以使用更现代、更强大的tikz-cd包裹:

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}[column sep=large,row sep=large]
V_{1}
  \arrow[r,"\rho_{1}(g)"]
  \arrow[d,swap,"\phi"] & 
V_{1}
  \arrow[r,"\rho_{1}(g')"]
  \arrow[d,swap,"\phi"] & 
V_{1} 
  \arrow[d,swap,"\phi"] & 
V_{1} 
  \arrow[r,"\rho_{1}(g'g)"]
  \arrow[d,swap,"\phi"] & 
V_{1} 
  \arrow[d,swap,"\phi"]
\\ 
V_{2}
  \arrow[r,swap,"\rho_{2}(g)"]
  \arrow[ur,Rightarrow,"\phi(g)"] & 
V_{2}
  \arrow[r,swap,"\rho_{2}(g')"]
  \arrow[ur,Rightarrow,"\phi(g')"] & 
V_{2} 
  \arrow[ur, phantom, "{=}", midway] & 
V_{2} 
  \arrow[r,swap,"\rho_{2}(g'g)"]
  \arrow[ur,Rightarrow,"\phi(g'g)"] & 
V_{2}
\end{tikzcd}

\end{document}

答案3

这是我要做的,它与其他示例不同:

\documentclass{article}
\usepackage{amsmath}
\usepackage[all,cmtip]{xy}

\begin{document}
\[
\vcenter{\hbox{
\xymatrix@!0@=20mm{
V_1\ar[r]^{\rho_1(g)}\ar[d]_{\phi}\xtwocell[rd]{}<>{^\phi(g)\quad}&
V_1\ar[r]^{\rho_1(g')}\ar[d]_{\phi}\xtwocell[rd]{}<>{^\phi(g')\quad\ }&
V_1\ar[d]^{\phi}\\
V_2\ar[r]_{\rho_2(g)}&
V_2\ar[r]_{\rho_2(g')}&
V_2
}
}}
=
\vcenter{\hbox{
\xymatrix@!0@=20mm{
V_1\ar[r]^{\rho_1(g'g)}\ar[d]_{\phi}\xtwocell[rd]{}<>{^\phi(g'g)\qquad}&
V_1\ar[d]^{\phi}\\
V_2\ar[r]_{\rho_2(g'g)}&
V_2
}
}}
\]
\end{document}

您也可以写\drtwocell<\omit>{^\phi(g)\quad}而不是\xtwocell[rd]{}<>{^\phi(g)\quad}但第二种方法的优点是它可以采取任何方向,而第一种方法虽然更简单,但您只有\··twocell。至于反转两个单元格中的箭头,^其中的符号可以完成这项工作。空白\quad是调整标签位置的解决方法,否则标签位置会与 2 单元格重叠。并且\vcenter{\hbox{...}}将 xymatrix 的原点更改为框的中心。

相关内容