我尝试在表格的某些单元格中创建换行符,因为我的句子很长,表格无法放在 A4 纸上。如何让 LaTeX 选择换行符?
这是我的代码
\begin{table}[hbt]
\centering
\begin{tabular}{lllllll}
\toprule
& Raumgewicht $\gamma$'$_m$ and [$\frac{kN}{m^3}$] &Reibungswinkel $\phi$'$_m$[]& Kohäsion c'[] & M$_E$-Wert []& N$_SPT$ [] & k-Wert [] \\
\midrule
Auffüllungen/Deckschicht& 18& 27 & 0 & 10* & 17 & -\\
Rückstausedimente nicht vorbelastes& 21 & 28 & 10 & 10 & 15 & $5\times10^-8$ - $1\times10^-6$ \\
Rückstausedimente vorbelastet & 22 & 32 & 10 & >50 & 91 & $5\times10^-8$ - $1\times10^-6$ \\
Moräne & 22 & 36 & 5 & >50 & >100 & $1\times10^-8$ - $5\times10^-6$\\
\bottomrule
\end{tabular}
\caption{Bodenkennwerte}
\label{tab:Bodenkennwerte}
\end{table}
我的序言是
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{booktabs}
\usepackage{stackengine}
\usepackage[top=3cm, bottom=2.5cm, left=2.5cm, right=2.5cm, footskip = 1cm]{geometry}
\usepackage{hyperref}
答案1
以下是关于如何更改代码以便在一页上显示表格的建议:
与您的原始代码相比,我所做的更改是:
\usepackage[T1]{fontenc}
为了正确显示标志而添加>
。sidewaystable
从包中使用rotating
以便旋转表格,因为它太宽而无法放在纵向页面上。- 包括
makecell
在需要的单元格中插入换行符 - 包括
siunitx
包裹- 对齐列中的数值
- 更容易输入和格式化单元
- 更容易输入和格式化数字范围
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{booktabs}
\usepackage[top=3cm, bottom=2.5cm, left=2.5cm, right=2.5cm, footskip = 1cm]{geometry}
\usepackage{rotating}
\usepackage{makecell}
\usepackage{siunitx}
\sisetup{range-phrase=--}
\begin{document}
\begin{sidewaystable}[hbt]
\centering
\begin{tabular}{lS[table-format=2]S[table-format=2]S[table-format=2]S[table-format=>2]S[table-format=>3]S}
\toprule
& {\makecell{Raumgewicht \\ $\gamma$'$_m$ and [\si{\kilo\newton\per\cubic\meter}]}} & {\makecell{Reibungswinkel \\ $\phi$'$_m$[]}}& {\makecell{Kohäsion \\ c'[]}} & {M$_E$-Wert []}& {N$_SPT$ []} & {k-Wert []} \\
\midrule
Auffüllungen/Deckschicht& 18& 27 & 0 & 10* & 17 & {-}\\
Rückstausedimente nicht vorbelastet & 21 & 28 & 10 & 10 & 15 & \numrange{5e-8}{1e-6} \\
Rückstausedimente vorbelastet & 22 & 32 & 10 & >50 & 91 & \numrange{5e-8}{1e-6} \\
Moräne & 22 & 36 & 5 & >50 & >100 & \numrange{1e-8}{5e-6}\\
\bottomrule
\end{tabular}
\caption{Bodenkennwerte}
\label{tab:Bodenkennwerte}
\end{sidewaystable}
\end{document}
答案2
第一列以及 6 个数据列中的 3 个都需要自动换行。我建议您使用tabularx
环境来实现此目的。
我还想建议您 (a) 将 6 个数据列的内容居中,(b) 将单位(在方括号中)放在与其余标题材料不同的行上,以及 (c) 使用包的和宏来排版\num
(格式化)数字和科学单位。\si
siunitx
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[top=3cm, bottom=2.5cm, hmargin=2.5cm, footskip = 1cm]{geometry}
\usepackage{amsmath,amssymb}
\usepackage{graphicx,booktabs,tabularx,ragged2e,siunitx}
\newcolumntype{C}{>{\Centering\arraybackslash\hspace{0pt}}X}
\newcolumntype{L}{>{\RaggedRight\arraybackslash\hspace{0pt}}X}
\usepackage{hyperref}
\hyphenation{Rück-stau-sedi-mente}
\begin{document}
\begin{table}[hbt]
\setlength\tabcolsep{4pt}
\sisetup{tight-spacing=true,per-mode=symbol}
\begin{tabularx}{\textwidth}{@{} L CCcccC @{}}
\toprule
& Raumgewicht $\gamma'_m$
& Reibungswinkel $\phi'_m$
& Kohäsion $c'$
& $M_E$\kern1pt-Wert
& $N_{SPT}$
& $k$-Wert \\
& [\si{\kilo\newton\per\meter\cubed}]
& [${}\cdot{}$] & [${}\cdot{}$] & [${}\cdot{}$] & [${}\cdot{}$] & [${}\cdot{}$] \\
\midrule
%% Aside: One must break up the f-f ligature in "Auffüllungen"
Auf"|fül\-lungen\slash Deckschicht& 18& 27 & 0 & 10* & 17 & -- \\ \addlinespace
Rückstausedimente nicht vorbelastet& 21 & 28 & 10 & 10 & 15
& \num{5e-8}~-- \num{1e-6} \\ \addlinespace
Rückstausedimente vorbelastet & 22 & 32 & 10 & $>50$ & 91
& \num{5e-8}~-- \num{1e-6} \\ \addlinespace
Moräne & 22 & 36 & 5 & $>50$ & $>100$
& \num{1e-8}~-- \num{5e-6} \\
\bottomrule
\end{tabularx}
\caption{Bodenkennwerte}
\label{tab:Bodenkennwerte}
\end{table}
\end{document}