目標:
- 表 1 の列ヘッダーを含むテキスト行の上下にスペースを追加します。
- 2 番目の hline の下にスペースを追加します。
- 3 番目の行の上にスペースを追加します。
以下のコードには、元のテーブル (#1) と、上記の目標を達成するためのいくつかの失敗した試行 (#2、#3、#4) が含まれています。
さらなる詳細:
ファイル
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}