16
    \documentclass{IEEEtran}

    \begin{document}

    \begin{table}[ht]

    \centering

    \begin{tabular}{|l|c|}

    \hline
      \multicolumn{2}{|c|}{Default Parameters} \\
      \hline
    Disk Purchase cost & $\$100$ \\
    Disk Operating Cost & $\$66$ \\
    Flash Purchase Cost & $\$500$\\
    Flash Operating cost & $\$20$\\
    Duration & 100 years\\
    $K_r$& .15\\
    \hline
    \end{tabular}

    \label{tab:default}
    \caption{Default parameters used for Monte Carlo Model.}
    \end{table}
    \end{document}

Can someone tell me why I am getting caption like this

TABLE 1 DEFAULT PARAMETERS...

4
  • 1
    Welcome to TeX.SX! For your information, you should place \labels always after \captions (see Why does an environment's label have to appear after the caption?). Furthermore, IEEEtran documentation asks explicitly to put captions before the table. Mar 21, 2014 at 6:56
  • 10
    This is a design decision of the class you are using: as such, it's entirely to be expected.
    – Joseph Wright
    Mar 21, 2014 at 6:57
  • 5
    If you're planning on submitting your document to the IEEE, I suggest you don't modify the caption style or it might annoy the editors. Journals tend to be fairly rigid about such things. Mar 21, 2014 at 17:17
  • I'd like to back up @NicolaTalbot on this - don't bother annoying the editors. Also don't use journal templates for anything other than journal submissions. However there must be a way to locally defeat the smallcaps surely: this is IEEE, so GaAs would be reasonable in a caption, chemical names are just plain wrong in all/small caps.
    – Chris H
    Mar 21, 2014 at 17:50

3 Answers 3

15

It is not in upper case, but in small caps.

As other things, this is a design decision of the class you are using, as Joseph Wright points out in his comment.

But if you really want to change this behavior, you can patch the command \@makecaption, responsible of the caption formatting, so to don't print the caption in small caps.

That is, add the following lines to your preamble:

\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatother

Complete example (note that I've put the \caption at the beginning of the table, as required by IEEEtran AND the \label after it, see Why does an environment's label have to appear after the caption?)

\documentclass{IEEEtran}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatother

\begin{document}
\begin{table}[ht]
\centering
\caption{Default parameters used for Monte Carlo Model.}
\label{tab:default}
\begin{tabular}{|l|c|}
\hline
  \multicolumn{2}{|c|}{Default Parameters} \\
  \hline
Disk Purchase cost & $\$100$ \\
Disk Operating Cost & $\$66$ \\
Flash Purchase Cost & $\$500$\\
Flash Operating cost & $\$20$\\
Duration & 100 years\\
$K_r$& .15\\
\hline
\end{tabular}
\end{table}
\end{document} 

Output:

enter image description here

If you also don't like the word "TABLE" to be upper cased, add the following line to your preamble:

\def\tablename{Table}

Output:

enter image description here


EDIT

If you want to bring the table caption in the same line of "Table I" you also have to add the following lines in your preamble:

\patchcmd{\@makecaption}
  {\\}
  {.\ }
  {}
  {}

Change the period to whatever separator you like.

MWE:

\documentclass{IEEEtran}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
  {\scshape}
  {}
  {}
  {}
\makeatletter
\patchcmd{\@makecaption}
  {\\}
  {.\ }
  {}
  {}
\makeatother
\def\tablename{Table}

\begin{document}
\begin{table}[ht]
\centering
\caption{Default parameters used for Monte Carlo Model.}
\label{tab:default}
\begin{tabular}{|l|c|}
\hline
  \multicolumn{2}{|c|}{Default Parameters} \\
  \hline
Disk Purchase cost & $\$100$ \\
Disk Operating Cost & $\$66$ \\
Flash Purchase Cost & $\$500$\\
Flash Operating cost & $\$20$\\
Duration & 100 years\\
$K_r$& .15\\
\hline
\end{tabular}
\end{table}
\end{document} 

Output:

enter image description here

5
  • Thanks it helped. Can I bring Table 1 next to the caption?
    – pretty
    Mar 21, 2014 at 16:14
  • @pretty See the edit. Mar 21, 2014 at 16:37
  • 1
    @pretty You can upvote the answer, if you want ;-) Mar 21, 2014 at 17:59
  • I just accidentially figured out that the same end result can be achieved by simply adding \usepackage{subfig}. Seems to be some strange side effect of the subfig package that it breaks the template settings for the caption.
    – luator
    Sep 14, 2015 at 8:12
  • This is almost perfect. One small thing, could you modify this command to make multi-line captions align to the left, like for figures?
    – Qubix
    Aug 22, 2017 at 13:29
1

I think you can include \usepackage{threeparttable}, then use

\begin{table}
(table here) 

\begin{tablenotes}
\small
\item Table depicts all the things i'm talking about in this caption
\end{tablenotes}

\end{table}
1
  • This did work for me, but the default font style/size of the tablenotes was identical to that in the main body of the text and I would prefer something that looked different.
    – Mead
    Jun 29, 2021 at 8:23
-1

As pointed out here

add:

\captionsetup[table]{name=TABLE,labelsep=newline,textfont=sc}
1
  • Isn't this doing the opposite of OP's question? OP has small caps and wants to get rid of it?
    – Stephen
    Mar 4, 2021 at 9:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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