这是一个后续问题:使用 tabularx 设置预定列宽的正确方法是什么?
如下面的代码所示,
\begin{landscape}
\renewcommand*{\arraystretch}{2}
\begin{table}\tiny
\centering
\caption{Summary of Elders' Fall Assessment Articles tabularx}
\label{tab:FallRiskAssessmentArticles}
\newcolumntype{Y}{>{\raggedright\arraybackslash}X}
\begin{tabularx}{\linewidth}{>{\raggedright}p{15mm}>{\centering}p{13mm}>{\centering}p{10mm}<{\centering\arraybackslash}XYYYYYY}
\toprule
\textbf{Author} & \textbf{Sensor} & \textbf{Placement} & \textbf{Subject \newline count (M:F)} & \textbf{Movement} & \textbf{Signal Processing} & \textbf{Advantages} & \textbf{Dis\-ad\-van\-tages} & \textbf{Outcome} & \textbf{Reference Measure} \\
\midrule
\noindent\citet{najafi_measurement_2002}&
Gyroscope&
Chest&
11 (5:6)&
STS transitions&
Wavelet transform&
Uses normal postural transition. Can be used during ADL&
Gyroscope must be worn on chest&
Extracted parameters show significant differences between high/low risk groups&
Fall risk using Tinetti tests, cognitive and vision tests, plus history of falls\\
\bottomrule
\end{tabularx}
\end{table}
\end{landscape}
我得到以下输出:
您可以看到第 4 列和第 5 列之间有很大空间。为什么如果我使用预定义宽度,会得到此结果?我该如何修复它?
更新
大卫·卡莱尔 (David Carlisle) 建议使用tabulary
包,但它似乎与存在兼容性问题arydshln
,而这是我正在加载的包之一。
答案1
X
列只是p
设置为相同宽度的列,其中宽度经过计算以使总表格宽度达到指定大小。因此,表格中的所有 X 列和 Y 列都是相同的宽度,
该列中的所有条目都是单行,因此您只需使用即可c
,以便将列设置为其内容的自然宽度。
或者使用\tabulary
而不是tabularx
那里使用的算法做为包含更多数据的列分配更宽的列。
A完全的文档:
\documentclass{article}
\usepackage{pdflscape,tabulary,booktabs}
\begin{document}
\begin{landscape}
\renewcommand*{\arraystretch}{2}
\begin{table}\tiny
\centering
\caption{Summary of Elders' Fall Assessment Articles tabularx}
\label{tab:FallRiskAssessmentArticles}
\begin{tabulary}{\textwidth}{*{10}{C}}
\toprule
\textbf{Author} & \textbf{Sensor} & \textbf{Placement} & \textbf{Subject \newline count (M:F)} & \textbf{Movement} & \textbf{Signal Processing} & \textbf{Advantages} & \textbf{Dis\-ad\-van\-tages} & \textbf{Outcome} & \textbf{Reference Measure} \\
\midrule
\noindent citet{najaf2002}&
Gyroscope&
Chest&
11 (5:6)&
STS transitions&
Wavelet transform&
Uses normal postural transition. Can be used during ADL&
Gyroscope must be worn on chest&
Extracted parameters show significant differences between high/low risk groups&
Fall risk using Tinetti tests, cognitive and vision tests, plus history of falls\\
\bottomrule
\end{tabulary}
\end{table}
\end{landscape}
\end{document}