Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I use the following code to include three images:

\begin{figure}[h]
\includegraphics{delete_gesture.png}
\caption{Awesome Image}
\label{fig:awesome_image}
\end{figure}

\begin{figure}[h]
\includegraphics{ok_gesture.png}
\caption{Awesome Image}
\label{fig:awesome_image}
\end{figure}

\begin{figure}[h]
\includegraphics{settings_gesture.png}
\caption{Awesome Image}
\label{fig:awesome_image}
\end{figure}

Now the images are ordered vertically. I want them horizontally. I tried to use columns or multicols but couldn't find a solution. Any hint?

share|improve this question

3 Answers 3

up vote 19 down vote accepted

put them all together in one figure environment and the three minipages without an empty line

\documentclass[english]{article}
\usepackage[demo]{graphicx}
\usepackage{babel,blindtext}

\begin{document}

\blindtext

\begin{figure}[!htb]
\minipage{0.32\textwidth}
  \includegraphics[width=\linewidth]{delete_gesture.png}
  \caption{A really Awesome Image}\label{fig:awesome_image1}
\endminipage\hfill
\minipage{0.32\textwidth}
  \includegraphics[width=\linewidth]{ok_gesture.png}
  \caption{A really Awesome Image}\label{fig:awesome_image2}
\endminipage\hfill
\minipage{0.32\textwidth}%
  \includegraphics[width=\linewidth]{settings_gesture.png}
  \caption{A really Awesome Image}\label{fig:awesome_image3}
\endminipage
\end{figure}

\blindtext

\end{document}

enter image description here

share|improve this answer
    
do I need to include a specific package? I get this error: –  RoflcoptrException Feb 4 '11 at 14:08
1  
! Undefined control sequence. \@tempa ->\width l.110 ...cs[\width=\linewidth]{delete_gesture.png} –  RoflcoptrException Feb 4 '11 at 14:09
    
Change the [\width=\linewidth] to [width=\linewidth], then it should work. –  Martin Scharrer Feb 4 '11 at 14:25
1  
@Martin: thanks, as I already say, try your own solutions ... –  Herbert Feb 4 '11 at 14:39
    
@Herbert: Sorry, I forgot the @Roflcoptr in my last comment. –  Martin Scharrer Feb 4 '11 at 14:44

I use the following technique:

\begin{figure}[h]       
    \fbox{\includegraphics{fig1.pdf}}   
    \hspace{30px}
    \fbox{\includegraphics{fig2.pdf}}
    \hspace{30px}
    \fbox{\includegraphics{fig3.pdf}}
    \caption{this is the caption}
    \label{materialflowChart}
\end{figure}

This places a thin line around each image (as it uses framebox). You can use \mbox in the same way if you don't want a frame. The \hspace{} command is a convenient way of controlling the spacing between the two images.

share|improve this answer
    
Some notes: \label always comes after \caption. I think you mean '30pt' not 30px, but \hfill would be better. –  Martin Scharrer Feb 4 '11 at 14:31
    
@Martin: px is the pdf unit and exactly 1 pixel –  Herbert Feb 4 '11 at 14:40
    
Thanks Martin, I did not know that about \label - I swapped the order. For some reason 30px works on my computer - I thought the px dimensions could be supplied? Is this not the case? –  celenius Feb 4 '11 at 14:41
    
@Herbert: thanks, I didn't know that pdftex is adding this unit. I had a short look in the TeXbook and run a test with tex beforehand. Should have used pdftex :-) –  Martin Scharrer Feb 4 '11 at 14:43
    
@Martin - Just curious, why is \hfill better? –  celenius Feb 4 '11 at 14:45

Here is a solution with subfigure package. It has 2 rows and 2 columns of images. The widths are chosen such that it fits into a column of a 2-column page. I guess you get the idea.

\begin{figure}[t]
\centering
\subfigure[text]{
\includegraphics[width=.225\textwidth]{file}
}
\subfigure[text]{
\includegraphics[width=.225\textwidth]{file}
}

\subfigure[text]{
\includegraphics[width=.225\textwidth]{file}
}
\subfigure[text]{
\includegraphics[width=.225\textwidth]{file}
}

\caption{blablabla}
\label{fig:whatever}
\end{figure}

As you can see it's pretty simple to have to images/objects next to each other -- just put them into the same line. Or you can use multicol inside a figure.

Please note that subfigure is superseded by subfig which provides \subfloat command instead of \subfigure. More compatibility information is found in the subfig documentation.

share|improve this answer
3  
Using subfigures is a good idea. I would prefer the subfig package, since it's newer than subfigure and it's widely considered as its successor. –  Stefan Kottwitz Feb 5 '11 at 16:26
3  
according to wikipedia subfigure is depricated. –  irrehaare Nov 10 '12 at 16:26

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.