
Mein Code:
\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
\pi=\begin{pmatrix}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
1 & 7 & 5 & 2 & 4 & 6 & 3 & 8
\end{pmatrix}
\end{align}
\end{document}
Wie erstelle ich solche Pfeile? Von einer Zahl zur anderen mit Text darüber/darunter und farbig.
Antwort1
Ich schlage vor, zu verwenden tikzmark
. Denken Sie daran, dass Sie zweimal kompilieren müssen.
Unabhängig davon: Sie scheinen nicht zu verwenden align
, also habe ich es in geändert equation
.
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\begin{document}
\begin{equation}
\pi=\begin{pmatrix}
1 & \tikzmarknode[blue!70!black]{a}{2} & 3 & \tikzmarknode[green!50!black]{b}{4} & 5 & 6 & 7 & 8\\
1 & \tikzmarknode[blue]{c}{7} & 5 & \tikzmarknode[green]{d}{2} & 4 & 6 & 3 & 8
\end{pmatrix}
\end{equation}
\begin{tikzpicture}[remember picture,overlay]
\draw[-latex]([yshift=.5ex]a.north) to[bend left]node[above]{\scriptsize$\textcolor{blue!70!black}{i}<\textcolor{green!50!black}{j}$} ([yshift=.5ex]b.north);
\draw[-latex]([yshift=-.5ex]d.south) to[bend left]node[below]{\scriptsize$\textcolor{blue}{\pi(i)}>\textcolor{green}{\pi(j)}$} ([yshift=-.5ex]c.south);
\end{tikzpicture}
\end{document}
Antwort2
Ich schlage eine pstricks
Lösung vor:
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage[svgnames]{xcolor}
\usepackage{pst-node}
\begin{document}
\begin{equation}
\pi=\begin{pmatrix}
1 & \rnode[t]{a}{\color{SteelBlue}2} & 3 & \rnode[t]{b}{\color{DarkSeaGreen}4} & 5 & 6 & 7 & 8\\
1 & \rnode[b]{c}{\color{DeepSkyBlue}7} & 5 & \rnode[b]{d}{\color{SpringGreen}2} & 4 & 6 & 3 & 8
\end{pmatrix}
\psset{arrowinset=0.1, arrows=->, nodesep=1pt, arcangle=30}
\ncarc{a}{b}\naput[labelsep=1pt]{{\color{SteelBlue}i }< {\color{DarkSeaGreen}j}}
\ncarc{d}{c}\naput[labelsep=1pt]{{\color{DeepSkyBlue}\pi(i )} > {\color{SpringGreen}\pi( j)}}
\end{equation}
\end{document}
Antwort3
Damit werden PGF/Tikz {pNiceMatrix}
- nicematrix
Knoten in der Matrix erstellt und Tikz kann mithilfe dieser Knoten Pfeile zeichnen.
\documentclass[12pt]{article}
\usepackage{nicematrix,tikz}
\begin{document}
\begin{equation}
\pi =
\begin{pNiceMatrix}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\\
1 & 7 & 5 & 2 & 4 & 6 & 3 & 8
\CodeAfter
\begin{tikzpicture}
\draw [->] (1-|2.5) to [bend left] node [above] {\scriptsize $i<j$} (1-|4.5);
\draw [->] (3-|4.5) to [bend left] node[below] {\scriptsize$\pi(i)>\pi(j)$} (3-|2.5);
\end{tikzpicture}
\end{pNiceMatrix}
\end{equation}
\end{document}
Sie benötigen mehrere Kompilierungen (aufgrund der PGF/Tikz-Knoten).