latex中的大表格显示不全;Latex中大表格处理方法;latex表格太大怎么办

在使用Latex table/tabular制作表格时,一个常见问题是表格过长,超出页面宽度,无法完整显示表格内容,如图所示:
在这里插入图片描述

这里提供两种解决思路以供需要的读者参考。

方法1:使用resizebox放缩命令

这里提供我经常使用的解决办法[1],即使用\resizebox命令放缩表格大小。附上代码如下:

\usepackage{tabularx} % for 'tabularx' env. and 'X' col. type
\usepackage{ragged2e} % for \RaggedRight macro
\usepackage{booktabs} % for \toprule, \midrule etc macros
%% create a derivative column type called 'L':
\newcolumntype{L}{>{\RaggedRight\hangafter=1\hangindent=0em}X}

\begin{table}[!htb]\centering
\resizebox{.8\columnwidth}{!}{
\begin{tabularx}{\textwidth}{ p{1cm} p{2cm} p{2cm} p{1.5cm} p{1.5cm} p{1cm} }
\toprule
Set Size   & parameter setup, on client side  & parameter transfer, on client side  & threshold PSI  & standard PSI & total(threshold+standard PSI) \\
\midrule
10         & 6.466s                           & 5.511s                              & 1.455s          & 0.028s  & 1.483s \\
50         & 7.084s                           & 5.166s                              & 8.805s          & 0.074s  & 8.879s\\
100        & 22.673s                          & 16.252s                             & 31.621s         & 0.145s  & 31.766s\\
200        & 78.327s                          & 40.318s                             & 106.344s        & 0.200s  & 106.544s\\
\bottomrule
\end{tabularx}
}
\caption{Timing Performance of the FHE-based Threshold PSI for small sets, 80-bit security level and multiple-threads (maximum 10 threads used).}
\end{table}

具体地,\resizebox{<width>}{<height>}可以按照指定的宽(width)和高(height)限制表格的大小。代码例子中使用了命令\resizebox{.8\columnwidth}{!},表示设置宽度为0.8倍的页面宽度,高度跟随宽度适应性地变化(即符号!的含义)。 最终显示效果如图:

在这里插入图片描述

latex 将表格缩小
在LaTeX中,可以使用resizebox命令来缩放表格。这个命令来自graphicx宏包,因此你需要在文档的序言部分包含这个宏包:


\usepackage{graphicx}

然后,你可以使用resizebox命令来缩放表格。例如,如果你想将表格的宽度设置为文本宽度的一半,你可以这样做:

\begin{table}[ht]
\centering
\resizebox{\textwidth}{!}{
\begin{tabular}{|l|c|r|}
\hline
左列 & 中列 & 右列 \\
\hline
数据1 & 数据2 & 数据3 \\
数据4 & 数据5 & 数据6 \\
\hline
\end{tabular}
}
\caption{缩小后的表格}
\end{table}

在上面的例子中,\resizebox{\textwidth}{!}将表格的宽度调整为文本宽度(\textwidth),而高度会自动调整保持表格的纵横比。如果你想手动设置高度,可以替换!为具体的长度值。

请注意,频繁地缩放表格可能会导致文档中的文本也随之缩小,从而影响文档的整体可读性和美观。因此,应当根据实际需要谨慎缩放表格。

方法2:使用sidewaystable环境

对于大表格,可以使用rotation包中的sidewaystable环境对其进行竖排[2]。参考代码如下:

\usepackage{tabularx} % for 'tabularx' env. and 'X' col. type
\usepackage{ragged2e} % for \RaggedRight macro
\usepackage{booktabs} % for \toprule, \midrule etc macros
\usepackage{rotating} % display table vertically

%% create a derivative column type called 'L':
\newcolumntype{L}{>{\RaggedRight\hangafter=1\hangindent=0em}X}

\begin{sidewaystable} [!htb]\centering
\begin{tabularx}{\textwidth}{ c c c c c c }
\toprule
Set Size   & parameter setup, on client side  & parameter transfer, on client side  & threshold PSI  & standard PSI & total(threshold+standard PSI) \\
\midrule
10         & 6.466s                           & 5.511s                              & 1.455s          & 0.028s  & 1.483s \\
50         & 7.084s                           & 5.166s                              & 8.805s          & 0.074s  & 8.879s\\
100        & 22.673s                          & 16.252s                             & 31.621s         & 0.145s  & 31.766s\\
200        & 78.327s                          & 40.318s                             & 106.344s        & 0.200s  & 106.544s\\
\bottomrule
\end{tabularx}
\caption{Timing Performance of the FHE-based Threshold PSI for small sets, 80-bit security level and multiple-threads (maximum 10 threads used).}
\end{sidewaystable} 

显示效果如下图:
在这里插入图片描述

方法3:使用makecell包

makecell包可以对单元格内的文字进行强制换行[3],因此也可以缩短表格宽度。

引入makecell包后,直接使用命令\makecell{NTT-accelerated FHEW\ (NTT of 2 processors)} 可以将文字内容强制分成两行。参考代码如下:

\usepackage{multirow,array}
\usepackage{makecell} 

\begin{table*}[!t]\centering
 \caption{Performance of FHEW-like FHE schemes with and without NTT hardware module on Xilinx Artix-7 FPGA}
 \label{table:fhew-hardware-result}
 \begin{minipage}{\textwidth}\centering
 \scalebox{0.75}{\begin{tabular}{cccccccc}
 \hline
 Instance   & & Computing Time  & Freq  & LUT/Reg &  Memory & DSPs \\
 \hline
\multirow{3}{*}{Pure Software} & Overall & 1.3s & \multirow{3}{*}{2.5 GHz}  & n.a.  & n.a. & n.a. \\
                               & Excluding NTT & 0.24s &  & n.a.  & n.a. & n.a. \\
                               & NTT (9484 times) & 1.06s & & n.a.  & n.a. & n.a. \\
\hline
\multirow{4}{*}{\makecell{NTT-accelerated FHEW\\ (NTT of 2 processors)}} & Overall & --- & n.a.  & n.a.  & 3 & 30 \\
             &  FHEW Software  & ---  & 2.5 GHz  & n.a. &   n.a. & n.a. \\
             &  NTT commputation & ---  & 250 MHz  & {2377/1879}   &   3 & 30 \\
             &  NTT communication & --- & 2.5 GHz  & 123090/135107 &   142 & 6 \\
\hline
\multirow{4}{*}{\makecell{NTT-accelerated FHEW\\ (NTT of 4 processors)}} & Overall &  1.2s & n.a.  & n.a.  & 3 & 30 \\
             &  FHEW Software  & 0.25s  & 2.5 GHz  & n.a. &   n.a. & n.a. \\
             &  NTT commputation & 0.14s  & 250 MHz  & {3702/3191}    &   6 & 60 \\
             &  NTT communication & 0.81s  & 2.5 GHz  & 123090/135107 &   142 & 6 \\
 \hline
 \end{tabular}}
 \end{minipage}
 \vspace{0mm}
 \end{table*}

显示效果如下图:

在这里插入图片描述

参考
^https://tex.stackexchange.com/questions/10863/is-there-a-way-to-slightly-shrink-a-table-including-font-size-to-fit-within-th
^https://blog.csdn.net/yq_forever/article/details/130337964
^https://tex.stackexchange.com/questions/2441/how-to-add-a-forced-line-break-inside-a-table-cell

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别出BUG求求了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值