107
\documentclass{article}
\usepackage[draft]{graphicx}
\begin{document}
\begin{figure}
\centering
\setlength\fboxsep{124pt}
\setlength\fboxrule{1pt}
\fbox{\includegraphics{dummy}}
\caption{Dummy caption}
\end{figure}
\end{document}

How can I increase vertical space between figure and caption?

4 Answers 4

114

Modify the lengths \abovecaptionskip and \belowcaptionskip (in the document preamble) to suit your needs:

\setlength{\abovecaptionskip}{15pt plus 3pt minus 2pt} % Chosen fairly arbitrarily

The default values are 10pt and 0pt. (The plus and minus allows the space to stretch and shrink if needed. The numbers specify how much.)

9
  • 14
    What does plus 3pt minus 2pt stand for?
    – Ichibann
    Feb 27, 2012 at 15:11
  • 12
    @Ichibann: plus and minus allow the space to stretch and shrink if needed. The numbers specify how much. Feb 27, 2012 at 15:15
  • 3
    Where do I put this line of code?
    – LWZ
    Sep 7, 2013 at 23:27
  • 3
    @AndreyVihrov: Correct be if I'm wrong, but it seems like you can place this line inside the float (e.g. figure) and then it will affect only this given float.
    – Dror
    Feb 4, 2014 at 20:57
  • 7
    @AndreyVihrov When you say "The default values are 10pt and 0pt.", do you mean 10pt plus 0pt or either 10pt or 0pt. The reason being, something unknown is causing my \belowcaptionskip to equal 0pt. This is undesired. I have caption loaded. Dec 1, 2016 at 10:19
64

\vspace*{-10mm} placed before \caption command does the trick. Just pick the number that works for you the best.

4
  • 2
    welcome, maybe using package caption would be a better approach? A global definition is almost always better than setting stuff by hand.
    – Johannes_B
    Aug 17, 2015 at 23:27
  • 7
    Thanks, this worked great for me! I needed to tweak the distance of a single figure, which on the bottom has only a thin, vertical line. This line caused the bulk of the figure to move too far up. In my experience, these sort of cases are best solved locally with small hacks like this. Jan 2, 2016 at 21:58
  • This works great if you want to configure only one figure. The accpepted answer will adjust all figures in your document. Jun 28, 2019 at 19:37
  • Worked fine for me. Thanks! Jul 21, 2020 at 3:08
29

You can use the caption package for this:

\usepackage[skip=2pt]{caption} % example skip set to 2pt

This will effect all figures.

The documentation says:

The vertical space between the caption and the figure or table contents is controlled by the option skip=amount. The standard LATEX document classes article, report and book preset it to skip=10pt, but other document classes may use a different amount.

0
2

Just do the \vspace*{-3mm} option

\begin{figure}[htbp]
    \centering
    \includegraphics[width=0.74\textwidth]{figs/Subplt.pdf}
    \vspace*{-3mm}
    \caption{Inverter-level and macro-level MAPE bootstrap distributions.}
    \label{Fig:Subplt_fig}
\end{figure}
3
  • 1
    Welcome. I wouldn't recommend this at all. I recommend to use the clean solution presented in the accepted answer.
    – Johannes_B
    Jun 16, 2020 at 3:11
  • 5
    I'm sure this is a hack with horrible side-effects, but it's a hack that just let me claw back under the page limit before a submission deadline, so on that basis, it was useful to know about and did the job.
    – Adam Burke
    Sep 25, 2020 at 6:31
  • If you use this be aware of tex.stackexchange.com/q/686212/250119 . Can't really recommend.
    – user202729
    May 20 at 8:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .