Latex 表格线不会沿所有列延伸

Latex 表格线不会沿所有列延伸

这是我关于 Latex 的第一个问题。我在下面提供了一个代码示例。请注意,变量名不是我的真实变量名,关联表也不是真实的。但是,就小数和变量名长度而言,这正是我的关联的样子。

问题:

  • 在编译文档时,发现顶部和底部的线条没有完全沿着列延伸 [自行编译或查看图片] -> 有没有办法使这些线条更长并与列一样长 [查看带有所需结果/红线的图片]。

  • 由于可读性原因,较小的字体不是一个好的选择

背景:

  • 这些表格是使用 Stata 中的 estout 包生成的
  • 标题名称被更改:在普通关联表中,标题名称应等于行名称。但是,这会使表太大。因此,我选择将标题名称更改为相应的数字
  • 编辑:请注意,此表是整个文档的一部分,其前后页面仅包含常规文本。
\documentclass{article}
\usepackage[utf8]{inputenc}

%Formatting tables 
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{dcolumn} 
\usepackage{rotating}


\title{Sidewas ytest}
\author{x.y }
\date{June 2019}

\begin{document}

\maketitle

\section{Introduction}

\newpage
\thispagestyle{empty}

%Table
\newpage
\thispagestyle{empty}
\begin{sidewaystable}
\centering
\scriptsize
\caption{Sample A: Correlation Matrix\label{tab:corr2}}
\begin{tabular*}{1\hsize}{@{\hskip\tabcolsep\extracolsep\fill}l*{15}{c}}
\toprule
                &(1)&(2)&(3)&(4)&(5)&(6)&(7)&(8)&(9)&(10)&11)&(12)&(13)&(14)&(15)\\
\midrule
(1) Variable name (\%)&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(2) Variable name  (\%)&    0.5&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(3) Variable name  (\%)&    0.5&    0.051&    1.000&         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(4) Variable name  (\%)&   -0.1&    0.005&    0.005&    1.000&         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(5) Variable name  (\%)&   -0.5&   -0.005&   -0.005&   -0.005&    1.000&         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(6) Variable name (100s)&   -0.005&   -0.005&   -0.005&   -0.005&   -0.000&    1.000&         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(7) Variable name &   -0.005&    0.012&   -0.004&    0.008&   -0.000&   -0.005&    1.000&         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(8) Very Long Variable name &    0.005&   -0.071&   -0.045&   -0.161&   -0.104&   -0.005&   -0.003&    1.000&         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(9) Variable name &   -0.005&   -0.005&   -0.005&   -0.005&   -0.005&    0.005&   -0.005&    0.005&    1.000&         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(10) Variable name &   -0.005&   -0.005&   -0.005&    0.005&    0.056&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(11) Variable name &   -0.045&   -0.005&    0.005&    0.005&    0.005&   -0.005&    0.009&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(12) Variable name &   -0.133&    0.005&    0.005&    0.005&    0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(13) Longer Variable name &    0.005&   -0.099&    0.033&   -0.000&    0.006&   -0.005&    0.005&    0.050&   -0.005&   -0.005&   -0.025&   -0.000&    1.000&         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(14) Long Variable name &    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.197&   -0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&   -0.038&    1.000&         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(15) Variable name &   -0.005&    0.005&   -0.005&    0.005&   -0.005&    0.049&    0.018&   -0.085&   -0.005&    0.005&   -0.005&    0.005&    0.005&    0.026&    1.000\\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\bottomrule
\end{tabular*}
\end{sidewaystable}
\end{document}

编制表格

期望输出

答案1

这里的问题是您的桌子不适合可用的长度\textheight(旋转桌子时长度也会改变!)。

showframe为了直观地展示这一点,我在代码中添加了包。这些行仅位于表的有效空间内:

桌子太宽

为了使您的表格合适,您可以尝试以下可能性(现已评论):

\begin{tabular*}{1\hsize}{@{\hskip\tabcolsep\extracolsep\fill}l*{15}{c}} % original
%\begin{tabular*}{1\hsize}{@{\hskip\tabcolsep\extracolsep\fill}p{2cm}*{15}{c}} % <=========
%\setlength{\tabcolsep}{4pt} % <=========================================
%\begin{tabular*}{1\hsize}{p{3.5cm}*{15}{c}} % <=========================

请在本文末尾查看完整内容...

下一个可能性是使用p{2cm}你的来代替,l从而得到结果:

小第一列

显示较小的(2cm)第一列(参见红色箭头),最后一列未超出打字区域

最后一栏

但是现在表格太长了,因为第一列中的一些条目需要两行才能完全打印出来。

下一个可能性是使用

\setlength{\tabcolsep}{4pt} % <=========================================
\begin{tabular*}{1\hsize}{p{3.5cm}*{15}{c}} % <=========================

使所有列之间的空间更小,并为第一列使用更大的空间p{3.5cm}

第一列较大

这似乎就是您想要的,但是现在我们仍然有两个可能的问题:如果第一列中的变量名需要更多位置,会发生什么情况?如果表格再次进入边距,会发生什么情况?

为了自动计算第一列的宽度,您可以使用包tabularx和环境tabularx来解决这个问题。X标记要计算的列的宽度:

\usepackage{ragged2e} % for a better linebreaking and hyphenation in \RaggedRight
\usepackage{tabularx}

\begin{tabularx}{\linewidth}{>{\RaggedRight}X*{15}{c}}

要获得跨越多页的表格,您可以使用longtable,如果需要tabularxlongtable一起使用包ltxtable...但我没有测试是否longtable正在ltxtable工作sidewaystable......

答案2

以下是关于如何使表格适合文本宽度的三种不同建议:

  1. 通过使用减少相邻列之间的空白\setlenghth{\tabcolsep}{4pt}
  2. 通过将字体大小替换\scriptsize\tiny(正如 MadyYuvi 在评论中所建议的那样
  3. 使用 在第一列引入自动换行tabularx

您可以在以下 MWE 中找到所有三个建议的完整代码:

\documentclass{article}
\usepackage[utf8]{inputenc}

%Formatting tables 
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{dcolumn} 
\usepackage{rotating}


%%%%% Only needed for suggestion 3 %%%%%
\usepackage{tabularx}
\usepackage{ragged2e}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\title{Sidewas ytest}
\author{x.y }
\date{June 2019}

\begin{document}

\maketitle

\section{Introduction}

\newpage
\thispagestyle{empty}

%Table
\newpage
\thispagestyle{empty}
\begin{sidewaystable}
\centering
\scriptsize
\setlength{\tabcolsep}{4pt}
\caption{Sample A: Correlation Matrix\label{tab:corr1}}
\begin{tabular*}{1\hsize}{@{\hskip\tabcolsep\extracolsep\fill}l*{15}{c}}
\toprule
                &(1)&(2)&(3)&(4)&(5)&(6)&(7)&(8)&(9)&(10)&11)&(12)&(13)&(14)&(15)\\
\midrule
(1) Variable name (\%)&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(2) Variable name  (\%)&    0.5&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(3) Variable name  (\%)&    0.5&    0.051&    1.000&         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(4) Variable name  (\%)&   -0.1&    0.005&    0.005&    1.000&         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(5) Variable name  (\%)&   -0.5&   -0.005&   -0.005&   -0.005&    1.000&         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(6) Variable name (100s)&   -0.005&   -0.005&   -0.005&   -0.005&   -0.000&    1.000&         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(7) Variable name &   -0.005&    0.012&   -0.004&    0.008&   -0.000&   -0.005&    1.000&         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(8) Very Long Variable name &    0.005&   -0.071&   -0.045&   -0.161&   -0.104&   -0.005&   -0.003&    1.000&         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(9) Variable name &   -0.005&   -0.005&   -0.005&   -0.005&   -0.005&    0.005&   -0.005&    0.005&    1.000&         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(10) Variable name &   -0.005&   -0.005&   -0.005&    0.005&    0.056&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(11) Variable name &   -0.045&   -0.005&    0.005&    0.005&    0.005&   -0.005&    0.009&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(12) Variable name &   -0.133&    0.005&    0.005&    0.005&    0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(13) Longer Variable name &    0.005&   -0.099&    0.033&   -0.000&    0.006&   -0.005&    0.005&    0.050&   -0.005&   -0.005&   -0.025&   -0.000&    1.000&         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(14) Long Variable name &    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.197&   -0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&   -0.038&    1.000&         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(15) Variable name &   -0.005&    0.005&   -0.005&    0.005&   -0.005&    0.049&    0.018&   -0.085&   -0.005&    0.005&   -0.005&    0.005&    0.005&    0.026&    1.000\\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\bottomrule
\end{tabular*}
\end{sidewaystable}

\begin{sidewaystable}
\centering
\tiny
\caption{Sample A: Correlation Matrix\label{tab:corr2}}
\begin{tabular*}{1\hsize}{@{\hskip\tabcolsep\extracolsep\fill}l*{15}{c}}
\toprule
                &(1)&(2)&(3)&(4)&(5)&(6)&(7)&(8)&(9)&(10)&11)&(12)&(13)&(14)&(15)\\
\midrule
(1) Variable name (\%)&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(2) Variable name  (\%)&    0.5&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(3) Variable name  (\%)&    0.5&    0.051&    1.000&         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(4) Variable name  (\%)&   -0.1&    0.005&    0.005&    1.000&         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(5) Variable name  (\%)&   -0.5&   -0.005&   -0.005&   -0.005&    1.000&         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(6) Variable name (100s)&   -0.005&   -0.005&   -0.005&   -0.005&   -0.000&    1.000&         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(7) Variable name &   -0.005&    0.012&   -0.004&    0.008&   -0.000&   -0.005&    1.000&         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(8) Very Long Variable name &    0.005&   -0.071&   -0.045&   -0.161&   -0.104&   -0.005&   -0.003&    1.000&         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(9) Variable name &   -0.005&   -0.005&   -0.005&   -0.005&   -0.005&    0.005&   -0.005&    0.005&    1.000&         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(10) Variable name &   -0.005&   -0.005&   -0.005&    0.005&    0.056&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(11) Variable name &   -0.045&   -0.005&    0.005&    0.005&    0.005&   -0.005&    0.009&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(12) Variable name &   -0.133&    0.005&    0.005&    0.005&    0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(13) Longer Variable name &    0.005&   -0.099&    0.033&   -0.000&    0.006&   -0.005&    0.005&    0.050&   -0.005&   -0.005&   -0.025&   -0.000&    1.000&         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(14) Long Variable name &    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.197&   -0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&   -0.038&    1.000&         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(15) Variable name &   -0.005&    0.005&   -0.005&    0.005&   -0.005&    0.049&    0.018&   -0.085&   -0.005&    0.005&   -0.005&    0.005&    0.005&    0.026&    1.000\\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\bottomrule
\end{tabular*}
\end{sidewaystable}


\begin{sidewaystable}
\centering
\scriptsize
\caption{Sample A: Correlation Matrix\label{tab:corr3}}
\begin{tabularx}{\linewidth}{>{\RaggedRight}X*{15}{c}}
\toprule
                &(1)&(2)&(3)&(4)&(5)&(6)&(7)&(8)&(9)&(10)&11)&(12)&(13)&(14)&(15)\\
\midrule
(1) Variable name (\%)&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(2) Variable name  (\%)&    0.5&    1.000&         &         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(3) Variable name  (\%)&    0.5&    0.051&    1.000&         &         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(4) Variable name  (\%)&   -0.1&    0.005&    0.005&    1.000&         &         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(5) Variable name  (\%)&   -0.5&   -0.005&   -0.005&   -0.005&    1.000&         &         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(6) Variable name (100s)&   -0.005&   -0.005&   -0.005&   -0.005&   -0.000&    1.000&         &         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(7) Variable name &   -0.005&    0.012&   -0.004&    0.008&   -0.000&   -0.005&    1.000&         &         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(8) Very Long Variable name &    0.005&   -0.071&   -0.045&   -0.161&   -0.104&   -0.005&   -0.003&    1.000&         &         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(9) Variable name &   -0.005&   -0.005&   -0.005&   -0.005&   -0.005&    0.005&   -0.005&    0.005&    1.000&         &         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(10) Variable name &   -0.005&   -0.005&   -0.005&    0.005&    0.056&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(11) Variable name &   -0.045&   -0.005&    0.005&    0.005&    0.005&   -0.005&    0.009&   -0.005&   -0.005&    0.005&    1.000&         &         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(12) Variable name &   -0.133&    0.005&    0.005&    0.005&    0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.005&    1.000&         &         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(13) Longer Variable name &    0.005&   -0.099&    0.033&   -0.000&    0.006&   -0.005&    0.005&    0.050&   -0.005&   -0.005&   -0.025&   -0.000&    1.000&         &         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(14) Long Variable name &    0.005&    0.005&   -0.005&   -0.005&   -0.005&    0.197&   -0.005&    0.005&    0.005&   -0.005&   -0.005&   -0.005&   -0.038&    1.000&         \\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\addlinespace
(15) Variable name &   -0.005&    0.005&   -0.005&    0.005&   -0.005&    0.049&    0.018&   -0.085&   -0.005&    0.005&   -0.005&    0.005&    0.005&    0.026&    1.000\\
                &         &         &         &         &         &         &         &         &         &         &         &         &         &         &         \\
\bottomrule
\end{tabularx}
\end{sidewaystable}
\end{document}

相关内容