![使用 xy-pic 连接线的开始和结束的箭头](https://linux22.com/image/280220/%E4%BD%BF%E7%94%A8%20xy-pic%20%E8%BF%9E%E6%8E%A5%E7%BA%BF%E7%9A%84%E5%BC%80%E5%A7%8B%E5%92%8C%E7%BB%93%E6%9D%9F%E7%9A%84%E7%AE%AD%E5%A4%B4.png)
我正在尝试使用 xy-pic 绘制延伸到两条线的箭头序列,因此我需要绘制一个箭头,将第一条线的末尾与第二条线的开头连接起来。这是我尝试过的代码:
\documentclass{amsart}
\usepackage[all]{xy}
\begin{document}
\[
\xymatrix{
\cdots\ar[r] & \mathrm{K}_j(M^{p+1}) \ar[r]^{i^p_j} &\mathrm{K}_j(M^{p})
\ar[r]^{q^p_j} & \mathrm{K}_j(M^{p}/M^{p+1}) \ar`r[d] `d[dl]
`l[ddlll]_{b^p_j} `d[ddll] '[ddll]&\\
& & & &\\
& \mathrm{K}_{j-1}(M^{p+1}) \ar[r]^{i^p_{j-1}} &\mathrm{K}_{j-1}(M^{p})
\ar[r]^{q^p_{-1}} & \mathrm{K}_{j-1}(M^{p}/M^{p+1}) \ar[r] & \cdots
}
\]
\end{document}
这会产生以下输出,这几乎就是我想要的。
问题是连接第一行和第二行的箭头的头部位置不正确。我怀疑这是因为我没有正确理解 xy-pic 的语法,所以如果有人能指出我做错的地方,我会很高兴。
编辑:我刚刚意识到上面的代码中有一个拼写错误:我在相关箭头的最后一个目标前面输入了一个撇号而不是反引号。代码应该是
\documentclass{amsart}
\usepackage[all]{xy}
\begin{document}
\[
\xymatrix{
\cdots\ar[r] & \mathrm{K}_j(M^{p+1}) \ar[r]^{i^p_j} &\mathrm{K}_j(M^{p})
\ar[r]^{q^p_j} & \mathrm{K}_j(M^{p}/M^{p+1}) \ar`r[d] `d[dl]
`l[ddlll]_{b^p_j} `d[ddll] `[ddll]&\\
& & & &\\
& \mathrm{K}_{j-1}(M^{p+1}) \ar[r]^{i^p_{j-1}} &\mathrm{K}_{j-1}(M^{p})
\ar[r]^{q^p_{-1}} & \mathrm{K}_{j-1}(M^{p}/M^{p+1}) \ar[r] & \cdots
}
\]
\end{document}
产生以下输出。
不幸的是,这个结果甚至更糟糕。
答案1
% arara: pdflatex
\documentclass{amsart}
\usepackage[all, cmtip, pdf]{xy}
\begin{document}
\[
\xymatrix{
\cdots\ar[r] & \mathrm{K}_j(M^{p+1}) \ar[r]^{i^p_j} &\mathrm{K}_j(M^{p})
\ar[r]^{q^p_j} & \mathrm{K}_j(M^{p}/M^{p+1})
\ar`r[d] `d[dl] `l[ddlll]_{b^p_j} `d[ddll] [ddll] & \\
& & & &\\
& \mathrm{K}_{j-1}(M^{p+1}) \ar[r]^{i^p_{j-1}} &\mathrm{K}_{j-1}(M^{p})
\ar[r]^{q^p_{-1}} & \mathrm{K}_{j-1}(M^{p}/M^{p+1}) \ar[r] & \cdots
}
\]
\end{document}