尝试为表格添加标题时出现错误,标题超出浮动范围

尝试为表格添加标题时出现错误,标题超出浮动范围

我正在尝试用 LaTeX 生成一个标题来描述表格,但是出现了错误:!LaTeX 错误:\caption 超出浮点数。表格的格式如下:

\begin{center}
 \begin{tabular}{c| c c c} 
 Campus & Main & Jubilee & Kings Meadow \\ [0.5ex] 
 \hline
 Main         & 0 & 21.8 & 24.6 \\
 Jubilee      & 21.8 & 0 & 9.3 \\
 Kings Meadow & 24.6 & 9.3 & 0 \\
\end{tabular}
\caption{Table Description}
\end{center}

任何帮助都将不胜感激。提前致谢

答案1

原则上,您有两种方法可以向表格添加标题(对于图形也同样适用,请使用figure代替table):

  1. 您可以使用非浮动表格(这意味着您不是使用环境table,使表格浮动),如以下 MWE 的第一个示例所示,几乎与您在代码中使用的相同。然后,​​您需要使用命令\captionof{table}{}为浮动外部的表格获取表格标题(您看到与您收到的错误消息的相关性了吗?)。
  2. 您可以在环境中使用浮动表格table。这意味着 LaTeX 可以将表格放置在文档内部的某个位置。通常,这意味着表格放置在页面顶部(如在我的 MWE 中所做的那样)或下一页的顶部...然后您需要使用命令\caption{}来获取表格标题...

请参阅以下 MWE

\documentclass{article}

\usepackage{caption} % <================================================
\usepackage{booktabs} % <================================= better tables
\usepackage{blindtext} % <======================= to generate dummy text 


\begin{document}

\begin{minipage}[c]{\linewidth}
\centering % <====================================== to center the table
\begin{tabular}{c| c c c} 
Campus & Main & Jubilee & Kings Meadow \\ [0.5ex] 
\hline
Main         & 0 & 21.8 & 24.6 \\
Jubilee      & 21.8 & 0 & 9.3 \\
Kings Meadow & 24.6 & 9.3 & 0 \\
\end{tabular}
\captionof{table}{Table Description} % <================== from package `caption`
\label{tab:campus} % <============================== to be referenacable
\end{minipage}

\blindtext

\begin{table}%[ht] % <====================================== let table float!
\centering
\begin{tabular}{c c c c} 
\toprule % <====================================== from package booktabs
Campus       & Main & Jubilee & Kings Meadow \\ [0.5ex] 
\midrule % <====================================== from package booktabs
Main         & 0    & 21.8    & 24.6 \\
Jubilee      & 21.8 & 0       & 9.3 \\
Kings Meadow & 24.6 & 9.3     & 0 \\
\bottomrule % <=================================== from package booktabs
\end{tabular}
\caption{Table Description a}
\label{tab:campusa}
\end{table}

Now we can reference table~\ref{tab:campus} and table~\ref{tab:campusa}.

\end{document}

及其结果:

生成的 pdf

如您所见,第二个表格浮动在页面顶部,带有标题,并且如您在最后一句中看到的那样可引用。您还可以看到,我使用了booktabs更好的水平线包,并删除了第二个表格中的垂直线(尽量不要使用它们!)。

如果您不希望表格浮动在同一页面的顶部,您可以尝试使用[ht]环境选项table

 \begin{table}[ht] % <====================================== let table float!

如果删除上面 MWE 中的%before ,则会得到改变的结果:[ht]

生成的 pdf 2

顺便问一句:你考虑过把数字与小数点对齐吗?表格中的数字看起来比我认为的要好。查看包dcolumnsiunitx...

相关内容