TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a two column document (using multicol) and want to insert figures so that they do NOT span columns. I have searched around and the only thing I can find says that only figure* is supported which spans the whole page (both columns). Is there a way to get single column figures in a document using multicols?

share|improve this question

migrated from stackoverflow.com Feb 27 '11 at 23:39

This question came from our site for professional and enthusiast programmers.

Ask here: tex.stackexchange.com – sorush-r Feb 27 '11 at 20:39
@Sorush: Be aware that LaTeX questions with the programming nature are still on topic on SO. @bryanp: That said, this one doesn't really have the programming nature. You want figure without the *. – dmckee Feb 27 '11 at 22:00
I second this question. I would like to have a figure/table float to the top of the column, like it would using twocolumn instead of multicol (which means that Herbert's answer does not apply). – yo' May 28 '12 at 13:50
I should have specified in the bounty that obviously [h]/[H] for "wide" float is a sort of a non-sense and is not needed. – yo' May 28 '12 at 16:35
up vote 41 down vote accepted

 \captionof{figure}{my caption of the figure}



enter image description here

Defining a placement option is not possible inside the multicols environment.

share|improve this answer
How would one go about also adding support for the [htbp] placement location specifiers? – G. H. Hardly Sep 18 '13 at 7:13
Great stuff +1 I was looking for this solution for a while. At first I used \begingroup & \endgroup for my tikz figures and their captions. Though it was not keeping them together and I had situations where a caption was in a different column than its figure. Thanks again this solved my problem perfectly. – Boro Nov 19 '13 at 23:46
@Herbert Sir, are we supposed to insert the picture/ figure on our own in the place of "foo" of "\includegraphics[width=\linewidth]{foo}" ? cause I tried to do so, but still black box is coming. What to do? – Anjan3 Sep 1 '14 at 5:57
delete the option [demo] for package graphicx – Herbert Sep 1 '14 at 10:11

One solution is to use the nonfloat package.




%figure,caption, and label go here

\figcaption{\emph{I am a figure caption!}}}

example output

share|improve this answer
This answer is meant to address the original question and is not meant to satisfy the additional requirements of the bounty. – JohnReed May 28 '12 at 17:06
Sorry if it's rude, but does this add anything more compared to the Herbert's answer? – yo' May 28 '12 at 17:59
Your question is legitimate. In terms of features, it does not add anything that I can think of. It is merely a slightly different way of addressing the original question by using the nonfloat package. I only added this answer for the sake of completeness. It may have worked better as an addendum to Herbert's answer but I didn't feel comfortable modifying it. – JohnReed May 28 '12 at 18:51
My apologies, I just wasn't sure. It is probably not wrong to provide an alternative, even though I think that caption package works great. – yo' May 28 '12 at 19:03

Your Answer


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.