# Two-headed arrow and continuous straight arrow in xy package

Using xy package, I have produced a figure. But I have a problem:

How can one create an arrow or a two-headed arrow between the two entries of a matrix that are located in different columns in which the difference of the columns' numbers are strictly greater than one(e.g. column number 1 and column number 3) in xy package? (In fact, I intend to have a continuous straight arrow between the two boxes in line 5 of the following flow chart instead of the two represented arrows).

\documentclass[reqno]{amsart}
\usepackage{enumitem}
\usepackage[all]{xy}
\usepackage{newlfont}
\usepackage[centertags]{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{plain}
\usepackage{mathrsfs}

\setcounter{page}{1}
\renewcommand{\baselinestretch}{1.5}
\oddsidemargin=.25cm \evensidemargin=.25cm \textwidth=15cm
\topmargin=0cm \textheight=21cm
\begin{document}
\title{Graphical Abstract}
\maketitle

\begin{figure}[!h]
\small
{$\xymatrix{ \framebox[0.33\textwidth]{\textbf{Partition of Unity}\quad \textbf{\&}\ar[d] \quad \textbf{State}} & & \framebox[0.42\textwidth]{\textbf{State}\quad \textbf{\&} \quad \textbf{Hyper Injective Mapping}} \ar[d] \\ \framebox[0.36\textwidth]{\textbf{Entropy of a Partition of Unity}}\ar[d] \ar[r] & \ar[d] & \framebox[0.45\textwidth]{\textbf{Hyper Injective Hyper MV--Algebra DS}} \ar[l] \\ \framebox[0.2\textwidth]{\textbf{Properties}} \ar[d] & \framebox[0.2\textwidth]{h(T, U)} \ar[d] \ar[r] \ar[l] & \framebox[0.2\textwidth]{\textbf{Calculations}} \ar[d] \\ \framebox[0.3\textwidth]{\textbf{Theorem of Isomorphism}} \ar[r] & \framebox[0.2\textwidth]{h(T)} \ar[ul] \ar[ur] \ar[l] \ar[r] & \framebox[0.32\textwidth]{\textbf{Kolmogorov-Sinai Theorem}} \ar[l] \\ \framebox[0.45\textwidth]{\textbf{Hyper Injective Hyper MV--Algebra DS}} \ar[dr] & \ar[r] \ar[l] & \framebox[0.48\textwidth]{\textbf{Semi-Independent Hyper MV--Algebra DS}} \ar[dl] \\ & \framebox[0.2\textwidth]{\textbf{MV--Algebra DS}} \ar[ul] \ar[ur]& }$}
\caption{\label{1}}
\end{figure}
\end{document}

• The newlfont package has become obsolete in 1995. – egreg Apr 27 '16 at 9:39

You have to do an arrow over two columns which would be \ar[rr] seeing from the left node. Than you have to change the arrow heads of this arrow which would look like \ar@{<->}[rr]. This should solve your problem.

% arara: pdflatex

\documentclass{amsart}
\usepackage[cmtip,all]{xy}

\setlength{\textwidth}{15cm}
\setlength{\textheight}{21cm}
\calclayout

\newcommand{\specialcell}[2][c]{%
\begin{tabular}[#1]{@{}c@{}}#2\end{tabular}
}

\begin{document}
\title{Graphical Abstract}
\maketitle
\begin{figure}[!h]
$\xymatrix@C=-.2em{% \fbox{\bfseries Partition of Unity \& State} \ar[d] & & \fbox{\bfseries State \& Hyper Injective Mapping} \ar[d] \\ \fbox{\textbf{\specialcell{Entropy of a Partition\\ of Unity}}} \ar[d] \ar[r] & \ar[d] & \fbox{\textbf{\specialcell{Hyper Injective Hyper\\ MV--Algebra DS}}} \ar[l] \\ \fbox{\textbf{Properties}} \ar[d] & \fbox{h(T, U)} \ar[d] \ar[r] \ar[l] & \fbox{\textbf{Calculations}} \ar[d] \\ \fbox{\textbf{Theorem of Isomorphism}} \ar@{<->}[r] & \fbox{h(T)} \ar[ul] \ar[ur] \ar@{<->}[r] & \fbox{\textbf{Kolmogorov-Sinai Theorem}} \\ \fbox{\textbf{\specialcell{Hyper Injective Hyper\\ MV--Algebra DS}}} \ar@{<->}[dr]\ar@{<->}[rr] & & \fbox{\textbf{\specialcell{Semi-Independent Hyper\\ MV--Algebra DS}}} \ar@{<->}[dl] \\ & \fbox{\textbf{MV--Algebra DS}} & }$
\caption{}\label{1}
\end{figure}
\end{document}


Such things are much easier done with TikZ. If you want to do that in a similar matrix syntax, you might want to take a look on :

% arara: pdflatex

\documentclass{amsart}
\newcommand{\specialcell}[2][c]{%
\begin{tabular}[#1]{@{}c@{}}#2\end{tabular}}
\usepackage{tikz-cd}

\begin{document}
\begin{figure}
\begin{tikzcd}[%
,cells={%
,nodes={%
,draw
,align=center
,font=\bf
,outer sep=1mm
}
}
,column sep={13em,between origins}
]
Partition of Unity \& State\ar[d] & & State \& Hyper Injective Mapping\ar[d] \\
\specialcell{Entropy of a Partition\\ of Unity}\ar[d] \ar[to path={-|(\tikztotarget)}]{dr} &  & \specialcell{Hyper Injective Hyper\\ $MV$--Algebra DS}\ar[to path={-|(\tikztotarget)}]{dl} \\
Properties\ar[d] & $h(T, U)$\ar[d] \ar[r] \ar[l] & Calculations\ar[d] \\
Theorem of Isomorphism\ar[<->]{r} & $h(T)$\ar[ul] \ar[ur] \ar[<->]{r} & Kolmogorov-Sinai Theorem\\
\specialcell{Hyper Injective Hyper\\ $MV$--Algebra DS}\ar[<->]{dr}\ar[<->]{rr} & & \specialcell{Semi-Independent Hyper\\ $MV$--Algebra DS}\ar[<->]{dl} \\
& $MV$--Algebra DS&
\end{tikzcd}
\caption{}\label{1}
\end{figure}
\end{document}

• Just as an aside, amsart has its own method for setting page dimensions: \setlength{\textwidth}{15cm}\calclayout – egreg Apr 27 '16 at 9:42
• @egreg Thanks, I've never used this class before. Please feel free to revise my edit. – LaRiFaRi Apr 27 '16 at 9:50
• You just set the desired height and width; then \calclayout recomputes \topmargin, \oddsidemargin and so on. – egreg Apr 27 '16 at 10:04