I am making a poster and I saw that sciposter is a very good poster class with the ability to process eps figures. Also I found that sciposter can handle \psfrag
commands used to add labels on figures. I require this feature in my work. However I am having trouble to include subfigures as I normally do in a normal article class document. The example in the package sciposter comes with an example showing how to include subfigures, but I still want to use the subfig package as I normally do. Here is a minimal code:
\documentclass{sciposter}
\usepackage{epsfig}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{caption}
\captionsetup{labelsep=period}
\captionsetup[subfloat]{captionskip=15pt}
%\usepackage{xcolor}
\usepackage{psfrag}
\title{Generalized Pattern Spectra Sensitive to Spatial Information}
\author{Michael H. F. Wilkinson}
\institute{Institute for Mathematics and Computing Science,\\
University of Groningen\\}
\email{michael@cs.rug.nl} % shows author email address below institute
\begin{document}
\conference{{\bf ICPR 2002}, 16th International Conference on Pattern
Recognition, 11-15 August 2002, Qu\'ebec City, Canada}
\maketitle
%%% Begin of Multicols-Enviroment
\begin{multicols}{3}
\section{Introduction}
\begin{figure}[htp]
\centering{
\subfloat[Good stiffness ratio $\overline{k}=0.2$]{
\label{fig:subfig:first figure}
\input{k02bb.tex}
\includegraphics[width=0.48\columnwidth]
{k02bb.eps}}
\hfill
\subfloat[Bad stiffness ratio $\overline{k}=0.3$]{
\label{fig:subfig:second figure}
\input{k02bb.tex}
\includegraphics[width=0.48\columnwidth]
{k02bb.eps}}
\caption{Test figure}
\label{fig:stiffgoodbad}}
\end{figure}
\end{multicols}
\end{document}
The above file is adapted from the example file sciposter-example.tex that comes with the package. The only difference is that I am using \subfloat
from the subfig package and that my figures are each in two files: 1 eps for the drawing and 1 tex files for the labels. This is how I normally do it when using Matlab and Laprint. On compiling the above I get the error message:
! LaTeX Error: \subfloat outside float.
l.50 \subfloat
[Good stiffness ratio $\overline{k}=0.2$]{
?
I don't get this error with \subfloat
when using the normal article or book class. What am I doing wrong here and why does it not work with sciposter?
Update: The files k02bb.tex and k02bb.eps can be downloaded from here:
I've closed the link. Contact me if you want the files.
There is an additional tex file: testforfigure.tex that is for a normal article class to test if combination of k02bb.tex and k02bb.eps works.
Even if we take away the two lines \input{k02bb.tex} in the code that I put above, I still get the same error message. It seems that Sciposter can't handle \subfloat
well.
Thanks a lot…
Best Answer
Since the sciposter document class provides its own
figure
code the subfig package does not recognize thefigure
as floating environment.So using
\captionsetup{type=figure}
as first line of the figure which contains subfigures should make\subfloat work
, i.e.