如何在一行中制作4个子表LaTeX

如何在一行中制作4个子表LaTeX

我想将表格水平并排放置,因此我使用子表以这种方式创建(3 x 2)结构(这是我的一个页面的样子):

\documentclass[11pt,a4paper]{article}
\usepackage{subcaption}

\begin{document}

\begin{table}
\caption{Caption}
\centering

\begin{subtable}{.5\textwidth}
\centering
\caption{$n=100$ \label{tab:tab_1}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}%
\begin{subtable}{.5\textwidth}
\centering
\caption{$n=200$ \label{tab:tab_2}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}
\end{table}

\begin{table}
\centering
\begin{subtable}{.5\textwidth}
\centering
\caption{$n=300$ \label{tab:tab_3}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}%
\begin{subtable}{.5\textwidth}
\centering
\caption{$n=400$\label{tab:tab_4}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}
\end{table}

\begin{table}
\centering
\begin{subtable}{.5\textwidth}
\centering
\caption{$n=500$ \label{tab:tab_5}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}%
\begin{subtable}{.5\textwidth}
\centering
\caption{$n=600$\label{tab:tab_6}}
\begin{tabular}{c|c|c}
\hline
\input{tab_all/tab_1.tex}
\hline
\end{tabular}
\end{subtable}
\end{table}

\pagebreak
.... same stucture on the next page

我有两页,所以下一页还有 3 个表格(每个表格有 2 个子表格),我用 分隔\pagebreak。我有两个问题:

  1. 我怎样才能修复“拉伸”表格的问题,即每页上的这三行拉伸以便均匀分布在一页上,这是我不想要的......

  2. 我怎样才能将两页放在一页上(并排),即,如何才能在一行中获得 4 个子表,每对子表都有副标题?

为了举例说明,我始终在这里输入相同的 tab_1,因为所有表格实际上大小相同,只是数字会发生变化...这是我输入的单独的 tab_1.tex 文件的内容(表格很小,因此从空间上来说,一行放 4 个没有问题..)

& param & error \cr\hline
$\beta$   &   0.005   &   5.1e-04   \cr  
$\gamma_1$   &   -0.116   &   0.014   \cr  
$\omega$   &   1.083   &   1.172   \cr  
$\delta$   &   -0.265   &   0.071   \cr  
\hline

感谢帮助!

答案1

要将多个表连成一行,您只需连接所有tabular环境,中间不留空行。要使表之间间距相等,请使用\hfill

平均能量损失

\documentclass[a3paper]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{lipsum,booktabs}
\parskip2em\parindent0pt
\begin{document}
\lipsum[2]
\bgroup\Large
\hfill
\begin{tabular}{lll}\toprule
    11 & 12 & 13\\\midrule
    21 & 22 & 23\\
    31 & 32 & 33\\\bottomrule
\end{tabular}\hfill
\begin{tabular}{lll}\toprule
    11 & 12 & 13\\\midrule
    21 & 22 & 23\\
    31 & 32 & 33\\\bottomrule
\end{tabular}\hfill
\begin{tabular}{lll}\toprule
    11 & 12 & 13\\\midrule
    21 & 22 & 23\\
    31 & 32 & 33\\\bottomrule
\end{tabular}\hfill
\begin{tabular}{lll}\toprule
    11 & 12 & 13\\\midrule
    21 & 22 & 23\\
    31 & 32 & 33\\\bottomrule
\end{tabular}\hfill\mbox{}
\egroup

\lipsum[3]
\end{document}

我不确定您是否也希望为不同列/大小的表格留出相等的空间(即,每个表格加上填充始终占文本宽度的 1/4)。在这种情况下,一种选择是使用tabularx主(隐藏)表格的包或将每个表格放在minipage一个.25\textwidth

相关内容