![使用 cmidrule (tabularx) 的表中的行長度不相等](https://rvso.com/image/399838/%E4%BD%BF%E7%94%A8%20cmidrule%20(tabularx)%20%E7%9A%84%E8%A1%A8%E4%B8%AD%E7%9A%84%E8%A1%8C%E9%95%B7%E5%BA%A6%E4%B8%8D%E7%9B%B8%E7%AD%89.png)
我發現第二行和第一行的線長度不相等。是否可以使其線長相同。
\documentclass{article}
\usepackage{tabularx, caption} % Load package caption for decent foramtting and spacing
\usepackage{booktabs, ragged2e} % Use booktabs rules and get rid og vertical rules, ragged2e to ragged text
\setlength\extrarowheight{1pt} % Both line necessary for decent spacing, unless you are using booktabs rules.
\renewcommand{\arraystretch}{1.2}
\begin{document}
\newcolumntype{A}{>{\RaggedRight\arraybackslash\hsize=0\hsize\linewidth=\hsize}X}
\newcolumntype{B}{>{\RaggedRight\arraybackslash\hsize=0.65\hsize\linewidth=\hsize}X}
\begin{table}[!ht]
\begin{tabularx}{\textwidth}{@{}A*{5}{B}@{}}
\toprule
& & \multicolumn{3}{c}{\textbf{ATest Combination}} \\
\cmidrule(lr){3-5}
& & \small Mean (\%)
& \small Std. Deviation (\%)& \small Std. Error Mean(\%) \\
\midrule
\multicolumn{1}{l}{Pair 1} & Transpor Example Dataset (AA) - Transpor Example Dataset (BB)
& 312314.20\% & 321321.36\% & 4.321354\% \\
\bottomrule
\end{tabularx}
\caption{dsadsa dsadasd%
\label{tab:test123}%
}
\end{table}
\end{document}
結果:
還有,如何讓單字的結果變成整個單字而不用「-」自動分解?
例如:
Transpor Example
Dataset (AA) -
Transpor Example
Dataset (BB)
並不是
Transpor Exam-
ple Data -
set (AA) -
Trans-
por Example
Dataset (BB)
答案1
以下是表格的三個不同版本:
在以下所有範例中,我都更正了cmidrule
指令的修剪指令((lr)
、(l)
、(r)
、詳細說明請參閱booktabs
手冊第 4 頁。)
在第一個範例中,我還將列說明符替換{@{}A*{5}{B}@{}}
為更合理的{l>{\raggedright\arraybackslash}Xccc}
.
在第二個表中,我選擇使用套件S
中的類型列siunitx
,以便允許數字相對於小數點分隔符號居中。此外,我刪除了%
多餘的重複符號,因為它們已經在列標題中提到。
在上一個範例中,我使用了稍小的字體大小並減少了相鄰列之間的水平空白。這樣,第二列的內容甚至可以分成兩行而不是四行。
\documentclass{article}
\usepackage{tabularx, caption}
\usepackage{booktabs, ragged2e}
\usepackage{makecell,siunitx}
\begin{document}
\begin{table}
\begin{tabularx}{\textwidth}{l>{\raggedright\arraybackslash}Xccc}
\toprule
& & \multicolumn{3}{c}{\textbf{ATest Combination}} \\
\cmidrule{3-5}
& & \small Mean (\%)
& \makecell{\small Std. Deviation\\ (\%)}& \makecell{\small Std. Error \\ Mean (\%)} \\
\midrule
\multicolumn{1}{l}{Pair 1} & Transpor Example Dataset (AA) - Transpor Example Dataset (BB)
& 312314.20\% & 321321.36\% & 4.321354\% \\
\bottomrule
\end{tabularx}
\caption{dsadsa dsadasd%
\label{tab:test123}%
}
\end{table}
\begin{table}
\begin{tabularx}{\textwidth}{l>{\raggedright\arraybackslash}XS[table-format=6.2]S[table-format=6.2]S[table-format=1.6]}
\toprule
& & \multicolumn{3}{c}{ATest Combination} \\
\cmidrule{3-5}
& & {Mean (\%)}
& {\makecell{ Std. Deviation\\ (\%)}}& {\makecell{ Std. Error \\ Mean (\%)}} \\
\midrule
\multicolumn{1}{l}{Pair 1} & Transpor Example Dataset (AA) - Transpor Example Dataset (BB)
& 312314.20 & 321321.36 & 4.321354 \\
\bottomrule
\end{tabularx}
\caption{dsadsa dsadasd%
\label{tab:test123}%
}
\end{table}
\begin{table}
\small \setlength{\tabcolsep}{3.5pt}
\begin{tabularx}{\textwidth}{l>{\raggedright\arraybackslash}Xccc}
\toprule
& & \multicolumn{3}{c}{ATest Combination} \\
\cmidrule{3-5}
& & Mean (\%)
& \makecell{ Std. Deviation\\ (\%)}& \makecell{ Std. Error \\ Mean (\%)} \\
\midrule
\multicolumn{1}{l}{Pair 1} & Transpor Example Dataset (AA) - Transpor Example Dataset (BB)
& 312314.20 & 321321.36 & 4.321354 \\
\bottomrule
\end{tabularx}
\caption{dsadsa dsadasd%
\label{tab:test123}%
}
\end{table}
\end{document}