更改 XY 圖片中箭頭的起始位置

更改 XY 圖片中箭頭的起始位置

這個腳本

\documentclass{article}
\usepackage[all]{xy}

\begin{document}
\begin{equation}
\xymatrix @R=0.3pc @C=0.3pc{ 
     & N_0\oplus G_1 & N_1\oplus G_2 \ar@/_1.5pc/[l]_u }
\end{equation}
\end{document}

給出以下結果 在此輸入影像描述

我希望箭頭從“G_2”開始並到達“G_1”。謝謝

答案1

一個可能的解決方案tikz-cd

\documentclass{article} 
\usepackage{amsmath} 
\usepackage{tikz-cd}
\begin{document} 
\[
\begin{tikzcd}
N_0\oplus G_1 
& N_1\oplus G_2 
\arrow[l, bend right=60, "u", swap, start anchor={[xshift=-10pt]north east}, end anchor={[xshift=-10pt]north east}]\\
\end{tikzcd}
\] 
\end{document}

在此輸入影像描述

xymatrix如果你想要像添加這樣的箭頭提示

\tikzcdset{arrow style=tikz, diagrams={>={Straight Barb[length=5pt,width=5pt]}}}

在你的序言中,之後\usepackage{tikz-cd},你會得到:

在此輸入影像描述

答案2

您可以使用tikz包。請考慮以下程式碼:

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{calc}
\tikzstyle{every picture}+=[remember picture]

\begin{document}
\begin{equation}
N_0\oplus \tikz[baseline]{\node[fill=blue!20,circle,inner sep=1pt,anchor=base] (t1){$G_1$}} \quad 
N_1\oplus \tikz[baseline]{\node[fill=red!20,circle,inner sep=1pt,anchor=base] (t2){$G_1$}}
\end{equation}
\begin{tikzpicture}[overlay]
\draw[-latex](t2.90)to[in=60,out=120]node[midway,above]{$u$}(t1);
\end{tikzpicture}
\end{document}

這是輸出:

在此輸入影像描述

筆記:您可以輕鬆變更或刪除節點顏色。

\begin{equation}
N_0\oplus \tikz[baseline]{\node[fill=none,draw=none,inner sep=1pt,anchor=base] (t1){$G_1$}} \quad 
N_1\oplus \tikz[baseline]{\node[fill=none,draw=none,inner sep=1pt,anchor=base] (t2){$G_1$}}
\end{equation}

在此輸入影像描述

您也可以透過更改程式碼中的以下行來更改箭頭的輸出和輸入角度以及位置:

\draw[-latex]($(t2)+(-1mm,2mm)$)to[in=60,out=120]node[midway,above]{$u$}($(t1)+(-1mm,2mm)$);

在此輸入影像描述

相關內容