表格标题与表格主体相匹配(就长度而言)

表格标题与表格主体相匹配(就长度而言)

我有一张包含 4 列的表格,但标题似乎比表格主体大得多。这看起来不太好。

有没有办法让两者的长度相同,或至少不要有那么大的差异?

以下是一个例子:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{graphicx}


\begin{document}

  \begin{table} \caption{My results. The dependent variable is ...}  
  \centering
   \begin{tabular}[htbp!]{@{} cc @{}} 
       \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline a & c \\ 
   \hline b & d \\ 
   \hline 
   \end{tabular} 
\end{table}
\end{document}

答案1

您可以使用该threeparttable包来实现此目的:它测量表格宽度并创建表格宽度的迷你页面。

我添加了booktabscaption包来改善表格的外观。

\documentclass[12pt,a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{font = footnotesize, labelfont = sc}
\usepackage{threeparttable, booktabs}

\begin{document}

  \begin{table}[!h]
  \centering
  \begin{threeparttable}
  \caption{My results. The dependent variable is ...}
       \begin{tabular}[!h]{ ccc }
       \toprule
       s1 & s2 & s3  \\
        \midrule
        a & c & e \\
        \midrule
        b & d  & f \\
         \bottomrule
   \end{tabular}
  \end{threeparttable}
\end{table}

\end{document} 

在此处输入图片描述

答案2

三个选项:

width1-使用caption包中您可以手动调整标题宽度。

2- 使用ctablemincapwidth包的宽度将自动适应表格宽度(对于太窄的表格,可以使用进一步调整标题宽度)。

3- 使用floatrow包及其\ttabbox命令的宽度会自动适应表格宽度。

\ctable包含标准设置、命令和width传递给的密钥的示例代码\captionsetup

\documentclass[12pt,a4paper]{article}
\usepackage{ctable}
\usepackage{caption}

\begin{document}

  \begin{table} 
  \caption{The standard behaviour for the caption}  
  \centering
   \begin{tabular}[htbp!]{@{} cc @{}} 
   \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline text1 & text2 \\ 
   \hline text3 & text4 \\ 
   \hline 
   \end{tabular} 
\end{table}

\ctable[
caption = My results. The dependent variable is ...,
label=tab:test,
]{@{} cc @{}}{}
{
   \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline text1 & text2 \\ 
   \hline text3 & text4 \\ 
   \hline 
}

\begin{table}
\captionsetup{width=5cm} 
  \caption{My results. The dependent variable is ...}  
  \centering
   \begin{tabular}[htbp!]{@{} cc @{}} 
   \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline text1 & text2 \\ 
   \hline text3 & text4 \\ 
   \hline 
   \end{tabular} 
\end{table}

\end{document}

在此处输入图片描述

具有标准设置的示例\ttabbox

\documentclass[12pt,a4paper]{article}
\usepackage{floatrow}

\begin{document}

  \begin{table} 
  \caption{The standard behaviour for the caption}  
  \centering
   \begin{tabular}[htbp!]{@{} cc @{}} 
   \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline text1 & text2 \\ 
   \hline text3 & text4 \\ 
   \hline 
   \end{tabular} 
\end{table}

\begin{table}
  \ttabbox{\caption{My results. The dependent variable is ...}}{%
   \begin{tabular}[htbp!]{@{} cc @{}} 
   \multicolumn{1}{c}{s1} & \multicolumn{1}{c}{s2} \\ 
   \hline text1 & text2 \\ 
   \hline text3 & text4 \\ 
   \hline 
   \end{tabular}%
   } 
\end{table}

\end{document}

在此处输入图片描述

相关内容