목표:
- 표 1의 열 헤더가 포함된 텍스트 줄 위와 아래에 공백을 추가합니다.
- 두 번째 줄 아래에 공백을 추가합니다.
- 세 번째 줄 위에 공백을 추가합니다.
아래 코드에는 위에서 언급한 목표를 달성하기 위한 여러 번의 실패한 시도(#2,#3,#4)와 함께 원본 테이블(#1)이 포함되어 있습니다.
추가 세부 사항:
파일
pdflatex
을 렌더링하는 데 사용하고 있습니다..tex
패키지를 사용하고 있습니다
tabularx
.나는
xtable()
R을 사용하여 이러한 테이블을 구축하고 있지만 R을 사용한 후에 편집할 수 있으므로 옵션이.tex
있는 질문에 대답할 필요는 없습니다.xtable
.tex
어떤 도움이라도 대단히 감사하겠습니다. 제안?
%%%%%%%%%%
\documentclass{article}
\usepackage{graphicx}
\usepackage[sc]{mathpazo}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage[labelfont=sf,hypcap=false,format=hang,width=1\columnwidth]{caption}
\geometry{verbose,tmargin=2.5cm,bmargin=2.5cm,lmargin=3cm,rmargin=3cm}
\usepackage{longtable}
\usepackage{tabularx}
\usepackage{array}
\begin{document}
%%%%%%%%%%
\title{Understanding Tables: Vertical Spacing}
\author{Brian}
\maketitle
This report is designed to be a quick resource for editing the vertical spacing in 'tabularx' tables. \\
\begin{table}[ht]
\captionof{table}{Original}
\centering
\begin{tabular}{lrrrrrr}
\hline
Type & Total & Mean & Median & Stdev & Min & Max \\
\hline
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\hline
\end{tabular}
\end{table}
{\renewcommand{\arraystretch}{2}%
\begin{table}[ht]
\captionof{table}{Spaceing stretched above and below ALL cells}
\centering
\begin{tabular}{lrrrrrr}
\hline
Type & Total & Mean & Median & Stdev & Min & Max \\
\hline
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\hline
\end{tabular}
\end{table}}
\begin{table}[ht]
\captionof{table}{Spacing streched ABOVE header}
\centering
\begin{tabular}{lrrrrrr}
\hline
\rule{0pt}{4ex}Type & Total & Mean & Median & Stdev & Min & Max \\
\hline
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\hline
\end{tabular}
\end{table}
\begin{table}[ht]
\captionof{table}{Spacing streched ABOVE ALL cells}
\centering
\setlength\extrarowheight{14pt}
\begin{tabular}{lrrrrrr}
\hline
Type & Total & Mean & Median & Stdev & Min & Max \\
\hline
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\hline
\end{tabular}
\end{table}
\end{document}
답변1
수평 규칙 측면에서 귀하의 접근 방식은 다음에서 제안한 것과 일치합니다.booktabs
. 내가 사용할 것은 다음과 같습니다.
\documentclass{article}
\usepackage[sc]{mathpazo}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage[labelfont=sf,hypcap=false,format=hang,width=\columnwidth]{caption}
\geometry{verbose,tmargin=2.5cm,bmargin=2.5cm,lmargin=3cm,rmargin=3cm}
\usepackage{tabularx,booktabs}
\begin{document}
\begin{table}[ht]
\caption{Original}
\centering
\begin{tabular}{lrrrrrr}
\hline
Type & Total & Mean & Median & Stdev & Min & Max \\
\hline
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\hline
\end{tabular}
\end{table}
\begin{table}[ht]
\renewcommand{\arraystretch}{1.2}%
\caption{\texttt{booktabs} version}
\centering
\begin{tabular}{l *{6}{r} }
\toprule
Type & Total & Mean & Median & Stdev & Min & Max \\
\midrule
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
booktabs
' \toprule
, 추가(흰색) 규칙을 삽입 \midrule
하여 \bottomrule
이러한 규칙 주위의 텍스트를 약간 분리합니다. 이것은 증가된 사용과 함께 \arraystretch
통기성 결과를 얻기에 충분해 보입니다.
답변2
cellspace
다음을 정의하는 패키지를 사용해 볼 수 있습니다.최소한의문자 접두사가 붙은 지정자가 있는 열의 셀 위와 아래의 세로 간격입니다 S
. siunitx
문자도 사용하는 패키지를 사용하는 경우 S
접두사는 다음 문자로 대체됩니다 C
.
%%%%%%%%%%
\documentclass{article}
\usepackage{graphicx}
\usepackage[sc]{mathpazo}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage[labelfont=sf,hypcap=false,format=hang,width=1\columnwidth]{caption}
\geometry{verbose,tmargin=2.5cm,bmargin=2.5cm,lmargin=3cm,rmargin=3cm}
\usepackage{longtable}
\usepackage{tabularx}
\usepackage{array, booktabs}
\usepackage{siunitx}
\sisetup{table-format =4.0,table-number-alignment = center}
\usepackage{cellspace}
\setlength\cellspacetoplimit{4pt}
\setlength\cellspacebottomlimit{4pt}
\begin{document}
%%%%%%%%%%
\title{Understanding Tables: Vertical Spacing}
\author{Brian}
\maketitle
This report is designed to be a quick resource for editing the vertical spacing in 'tabularx' tables. \\
\begin{table}[ht]
\captionof{table}{With \texttt{cellspace}}
\centering
\begin{tabular}{ClS[table-format=5.0]SSS[table-format=3.0]S[table-format=3.0] S}
\toprule
Type & {Total} & {Mean} & {Median} & {Stdev} & {Min} & {Max} \\
\midrule
Test1 & 490 & 15 & 8 & 24 & 1 & 115 \\
Test2 & 52610 & 1697 & 1620 & 430 & 920 & 2850 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}