如何在 tabularx 中将文本居中?

如何在 tabularx 中将文本居中?

可能重复:
在 tabularx 和 X 列中居中

我曾经\begin{tabular}在文章中插入表格。列标题很长,导致表格超出纸张边界。我在网上搜索,发现{tabularx}可以换行。我用它解决了问题。但我希望内容居中。如何在环境中实现这一点{tabularx}?我是 LaTeX 新手,这是我的第一篇文章。我已将脚本复制到下面:

\begin{table}[ht]
\caption{Clear Zone Deficiency and Crash Severity} 
\centering 
\begin{tabularx} {\linewidth} {X X X X X X X}
\hline\hline       
CLEAR ZONE DEFICIENCY & TOTAL CRASHES & FATAL & INJURY & PDO & \% CRASHES & \% FATAL \\ [0.5ex] 
\hline           
0ft-4ft & 4 & 0 & 2 & 2 & 7.84 & 0 \\ 
4ft-8ft & 14 & \textbf{1} & 4 & 9 & 27.45 & 9.09 \\
8ft-12ft & 15 & \textbf{1} & 5 & 9 & 29.41 & 9.09 \\ 
12ft + & 18 & \textbf{9} & 4 & 5 & 35.29 & \textbf{81.82}\\
\hline
TOTAL & 51 & 11 & 15 & 25 & 100 & 100 \\ [1ex]     
\hline 
\end{tabularx}
\label{table:CZseverity} 
\end{table}

答案1

如果使用tabulary代替,然后使用C代替X,它将自动调整表格宽度并使内容居中:

\documentclass{article}
\usepackage{tabulary} % instead of tabularx

\begin{document}

\begin{table}[ht]
\caption{Clear Zone Deficiency and Crash Severity} 
\centering 
\begin{tabulary} {\linewidth} {C C C C C C C}
\hline\hline       
CLEAR ZONE DEFICIENCY & TOTAL CRASHES & FATAL & INJURY & PDO & \% CRASHES & \% FATAL \\ [0.5ex] 
\hline           
0ft-4ft & 4 & 0 & 2 & 2 & 7.84 & 0 \\ 
4ft-8ft & 14 & \textbf{1} & 4 & 9 & 27.45 & 9.09 \\
8ft-12ft & 15 & \textbf{1} & 5 & 9 & 29.41 & 9.09 \\ 
12ft + & 18 & \textbf{9} & 4 & 5 & 35.29 & \textbf{81.82}\\
\hline
TOTAL & 51 & 11 & 15 & 25 & 100 & 100 \\ [1ex]     
\hline 
\end{tabulary}
\label{table:CZseverity} 
\end{table}

\end{document}

如果您发现某些标题包含不必要的断词,而您不需要在这些列中进行自动换行,则只需使用c而不是C

答案2

我建议进行几项改变:

  • 我将加载该包{booktabs}并使用它\toprule\midrule\bottomrule

  • 而不是0ft-4ft你应该0\,ft--4\,ft(值和单位之间的空格很细,用 n 破折号代替连字符)。

  • 您可以通过说来传递\centering\arraybackslash给列,快捷方式会重复列规范准确次数。X>{\centering\arraybackslash}X*{n}{spec}specn

代码如下:

\begin{table}[ht]
\caption{Clear Zone Deficiency and Crash Severity} 
\centering 
\begin{tabularx}{\linewidth}{*{7}{>{\centering\arraybackslash}X}}
\toprule
CLEAR ZONE DEFICIENCY & TOTAL CRASHES & FATAL & INJURY & PDO & \% CRASHES & \% FATAL \\ [0.5ex] 
\midrule[\heavyrulewidth]         
0\,ft--4\,ft & 4 & 0 & 2 & 2 & 7.84 & 0 \\ 
4\,ft--8\,ft & 14 & \textbf{1} & 4 & 9 & 27.45 & 9.09 \\
8\,ft--12\,ft & 15 & \textbf{1} & 5 & 9 & 29.41 & 9.09 \\ 
$>{}$12\,ft & 18 & \textbf{9} & 4 & 5 & 35.29 & \textbf{81.82}\\
\midrule
TOTAL & 51 & 11 & 15 & 25 & 100 & 100 \\ [1ex]     
\bottomrule
\end{tabularx}
\label{table:CZseverity} 
\end{table}

相关内容