Изменение начальной точки стрелки на картинке 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)$);

введите описание изображения здесь

Связанный контент