# Caption below boxed algorithm2e when used as a figure?

My desired output is similar to the example given in this answer, in that I want the caption below the algorithm and outside the box, except I want the algorithm included as a figure (so I use \usepackage[figure,boxed]{algorithm2e}).

Currently I have something like this:

The MWE:

\documentclass[a4paper]{article}

\usepackage{blindtext}
\usepackage[linesnumbered,boxed,figure]{algorithm2e}

\SetAlCapSkip{1em}

\SetKwInput{KwInput}{Input}
\SetKwInput{KwOutput}{Output}

\begin{document}

\begin{algorithm}[h]
\SetAlgoLined
\KwInput{Parameters...}

\KwOutput{$\emptyset$}

\If{Condition}
{
Do something \;
}
\caption{Algoritm test...}
\end{algorithm}

\end{document}


One way to go is to set the algorithm as a non-floating object (use H instead of h) and use a normal figure environment instead of the option figure when loading algorithm2e.

MWE:

\documentclass[a4paper]{article}

\usepackage{blindtext}
\usepackage[linesnumbered,boxed]{algorithm2e}

%\SetAlCapSkip{1em}

\SetKwInput{KwInput}{Input}
\SetKwInput{KwOutput}{Output}

\begin{document}

\begin{figure}[h]
\begin{algorithm}[H]
\SetAlgoLined
\KwInput{Parameters...}

\KwOutput{$\emptyset$}

\If{Condition}
{
Do something \;
}
\end{algorithm}
\caption{Algoritm test...}
\end{figure}

\end{document}


Output:

• does it need !H or just H? Nov 15 '13 at 6:30
• @adifferentben just H Nov 15 '13 at 6:33
• As a supplement: the !H in \begin{algorithm}[!H] in my case (using algorithmicx) raises an error Not in outer par mode. H works well. Oct 30 '14 at 13:23
• This does not work for a twocolumn environment. Nov 13 '18 at 13:48
• Maybe this should be a new question. But I find placing the figure correctly (with the caption nicely spaced as you do here) much easier when I put the algorithm in a figure like you do here. But I want the caption to read Algorithm 1 and use the algorithm counter. Is this possible? Mar 24 at 11:00