我的代码没有根据宽度进行修复。Latex 说我在数组中使用了非法字符。这是我的代码:
\begin{table}[ht!]
\centering
\begin{tabular}{|| c{5cm} | c{5cm} | c{5cm} | c{5cm} | c{5cm} ||}
\hline
Buis & Lengte (m) & Debiet (m\textsuperscript{3}/h) & Diameter (mm) & Handelsmaat diameter (mm) & Drukverval (m)\\ [0.5ex]
\hline\hline
A-R & 2360 & 1242,50 & 548,81 & 570 & 0,063\\
A-B & 50 & $\frac{3479}{6}$ & 374,91 & 407 & 0,002\\
A-M & 200 & 124,25 & 173,55 & 180,8 & 0,017\\
A-I & 750 & $\frac{5467}{12}$ & 332,32 & 361,8 & 0,032\\
B-C & 150 & $\frac{994}{3}$ & 283,40 & 285 & 0,008\\
B-H & 425 & $\frac{497}{3}$ & 200,40 & 203,4 & 0,032\\
C-D & 250 & $\frac{2485}{12}$ & 224,05 & 226,2 & 0,017\\
C-G & 425 & $\frac{497}{12}$ & 100,20 & 113 & 0,058\\
D-E & 700 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,034\\
D-F & 500 & $\frac{497}{12}$ & 100,20 & 113 & 0,068\\
F-G & 275 & $\frac{497}{12}$ & 100,20 & 113 & 0,037\\
G-H & 325 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,034\\
I-J & 325 & $\frac{994}{3}$ & 283,40 & 285 & 0,017\\
I-L & 150 & $\frac{497}{12}$ & 100,20 & 113 & 0,020\\
J-K & 300 & $\frac{497}{3}$ & 200,40 & 203,4 & 0,023\\
J-O & 200 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,021\\
K-N & 200 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,021\\
L-M & 750 & $\frac{497}{12}$ & 100,20 & 113 & 0,101\\[1ex]
\hline
\end{tabular}
\caption{De maten van de buizen in het distributiesysteem}
\label{table:distributiesysteem}
\end{table}
答案1
不要忽略 LaTeX 警告和错误消息。对于手头的表格,它们出现是因为c
列类型不是array
接受一个论点。我想,可以通过在序言中加载包并将所有 5 个实例更改为 来c{5cm}
表面上“修复”语法错误wc{5cm}
。然而,这将使表格太宽了适合一张普通的纸张。
我实际上找不到强制统一列宽的充分理由。但是,表格迫切需要的是 (a) 第一列的附加列规范——我建议使用l
列类型——和 (b) 标题行单元格中的某种结构。具体来说,我建议您 (i) 在字符串“Handelsmaat 直径”中引入换行符(以防止列变得过宽)和 (ii) 将测量单位单独放在一行中,适用于所有 5 个数据列。进行这些更改的结果,以及采取措施强制第 2 列和第 5 列中的数字在它们各自的隐式或显式小数点标记上对齐,省略所有垂直规则,并使用书签包而不是\hline
,如下面的屏幕截图所示。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[dutch]{babel}
\usepackage{booktabs,dcolumn}
\newcolumntype{d}[1]{D,,{#1}} % to align numbers on decimal marker
\newcolumntype{C}{>{$}c<{$}} % centered, automatic math mode
\newcommand\mc[1]{\multicolumn{1}{c}{#1}} % handy shortcut macro
\begin{document}
\begin{table}[ht!]
\setlength\extrarowheight{3pt} % accommodate the \frac terms in column 3
\centering
\begin{tabular}{@{} l d{4.0} C c d{3.1} c @{}}
\toprule
Buis & \mc{Lengte} & \mc{Debiet} & Diameter & \mc{Handelsmaat} & Drukverval \\
& & & & \mc{diameter} \\
& \mc{(m)} & \mc{(m\textsuperscript{3}/h)} & (mm) & \mc{(mm)} & (m) \\
\midrule
A-R &2360 & 1242,50 & 548,81 & 570 & 0,063\\
A-B & 50 & \frac{3479}{6} & 374,91 & 407 & 0,002\\
A-M & 200 & 124,25 & 173,55 & 180,8 & 0,017\\
A-I & 750 & \frac{5467}{12} & 332,32 & 361,8 & 0,032\\
B-C & 150 & \frac{994}{3} & 283,40 & 285 & 0,008\\
B-H & 425 & \frac{497}{3} & 200,40 & 203,4 & 0,032\\
C-D & 250 & \frac{2485}{12} & 224,05 & 226,2 & 0,017\\
C-G & 425 & \frac{497}{12} & 100,20 & 113 & 0,058\\
D-E & 700 & \frac{497}{6} & 141,70 & 144,6 & 0,034\\
D-F & 500 & \frac{497}{12} & 100,20 & 113 & 0,068\\
F-G & 275 & \frac{497}{12} & 100,20 & 113 & 0,037\\
G-H & 325 & \frac{497}{6} & 141,70 & 144,6 & 0,034\\
I-J & 325 & \frac{994}{3} & 283,40 & 285 & 0,017\\
I-L & 150 & \frac{497}{12} & 100,20 & 113 & 0,020\\
J-K & 300 & \frac{497}{3} & 200,40 & 203,4 & 0,023\\
J-O & 200 & \frac{497}{6} & 141,70 & 144,6 & 0,021\\
K-N & 200 & \frac{497}{6} & 141,70 & 144,6 & 0,021\\
L-M & 750 & \frac{497}{12} & 100,20 & 113 & 0,101\\
\bottomrule
\end{tabular}
\caption{De maten van de buizen in het distributiesysteem}
\label{table:distributiesysteem}
\end{table}
\end{document}
答案2
使用tblr
表和tabularray
库booktabs
,siunitx
(加载具有相同名称的包)和nccmath
包(用于中等大小分数:)\mfrac
:
编辑:
从您的 MWE 可以得出结论,您希望有 5 厘米宽的列。这意味着您的表格应该有 30 厘米宽!您的文档中的页面大小是多少?我建议您按如下方式重新设计您的表格:
- 第一列的自然宽度由
l
列类型决定 X
其他五列的宽度相同,由包提供的列类型决定tabularray
。
这样表格的宽度就等于\textwidth
文档的宽度。
一些X
列通过选项进行了扩展si
,可以将数字对齐到小数点标记处(使用siunitx
包),第三列的内容处于数学模式 siunitx
,所有内容均通过选项居中c
。
要了解该软件包的更多特性,tabularray
请阅读其(简明且详尽的书面)文档。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[dutch]{babel}
\usepackage{tabularray}
\UseTblrLibrary{booktabs, siunitx}
\sisetup{per-mode = symbol,
output-decimal-marker = {,}}
\usepackage{nccmath}
\begin{document}
\begin{table}[ht]
\centering
\begin{tblr}{colspec = {l X[c, si={table-format=4.0}]
X[c, mode=dmath] X[c]
X[c, si={table-format=3.1}] X[c] },
row{1,2} = {guard, mode=text},
}
\toprule
Buis & Lengte & Debiet & Diameter & Handelsmaat Diameter & Drukverval \\
& (\unit{\meter})
& (\unit{\cubic\meter\per\hour})
& (\unit{\milli\meter})
& (\unit{\milli\meter}) & (\unit{meter}) \\
\midrule
A-R &2360 & 1242,50 & 548,81 & 570 & 0,063 \\
A-B & 50 & \mfrac{3479}{6} & 374,91 & 407 & 0,002 \\
A-M & 200 & 124,25 & 173,55 & 180,8 & 0,017 \\
A-I & 750 & \mfrac{5467}{12} & 332,32 & 361,8 & 0,032 \\
B-C & 150 & \mfrac{994}{3} & 283,40 & 285 & 0,008 \\
B-H & 425 & \mfrac{497}{3} & 200,40 & 203,4 & 0,032 \\
C-D & 250 & \mfrac{2485}{12} & 224,05 & 226,2 & 0,017 \\
C-G & 425 & \mfrac{497}{12} & 100,20 & 113 & 0,058 \\
D-E & 700 & \mfrac{497}{6} & 141,70 & 144,6 & 0,034 \\
D-F & 500 & \mfrac{497}{12} & 100,20 & 113 & 0,068 \\
F-G & 275 & \mfrac{497}{12} & 100,20 & 113 & 0,037 \\
G-H & 325 & \mfrac{497}{6} & 141,70 & 144,6 & 0,034 \\
I-J & 325 & \mfrac{994}{3} & 283,40 & 285 & 0,017 \\
I-L & 150 & \mfrac{497}{12} & 100,20 & 113 & 0,020 \\
J-K & 300 & \mfrac{497}{3} & 200,40 & 203,4 & 0,023 \\
J-O & 200 & \mfrac{497}{6} & 141,70 & 144,6 & 0,021 \\
K-N & 200 & \mfrac{497}{6} & 141,70 & 144,6 & 0,021 \\
L-M & 750 & \mfrac{497}{12} & 100,20 & 113 & 0,101 \\
\bottomrule
\end{tblr}
\caption{De maten van de buizen in het distributiesysteem}
\label{table:distributiesysteem}
\end{table}
\end{document}
答案3
您分配的空间远远超过 25 厘米:没有合理的纸张格式允许这样做。
我会避免使用垂直规则和双重规则:它们没有任何意义并且难以阅读。
使用siunitx
我们确保数字的正确输出(逗号后面不应该有空格)。
很长的标题被方便地分成两行。
我之所以用它\addlinespace
是因为分数。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[dutch]{babel}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{lipsum} % for mock content
\sisetup{
output-decimal-marker={,}
}
\begin{document}
\lipsum[1][1-5]
\begin{table}[htp!]
\centering
\begin{tabular}{
@{}
l
S[table-format=4.0]
c
S[table-format=3.2]
S[table-format=3.1]
S[table-format=1.3]
@{}
}
\toprule
Buis & {Lengte} & Debiet & {Diameter} & {Handelsmaat} & {Drukverval} \\
& {(\unit{m})} & (\unit{m^3/h}) & {(\unit{mm})} & {diameter (\unit{mm})} & {(\unit{m})} \\
\midrule
A-R & 2360 & \num{1242,50} & 548,81 & 570 & 0,063 \\ \addlinespace
A-B & 50 & $\frac{3479}{6}$ & 374,91 & 407 & 0,002 \\ \addlinespace
A-M & 200 & \num{124,25} & 173,55 & 180,8 & 0,017 \\ \addlinespace
A-I & 750 & $\frac{5467}{12}$ & 332,32 & 361,8 & 0,032 \\ \addlinespace
B-C & 150 & $\frac{994}{3}$ & 283,40 & 285 & 0,008 \\ \addlinespace
B-H & 425 & $\frac{497}{3}$ & 200,40 & 203,4 & 0,032 \\ \addlinespace
C-D & 250 & $\frac{2485}{12}$ & 224,05 & 226,2 & 0,017 \\ \addlinespace
C-G & 425 & $\frac{497}{12}$ & 100,20 & 113 & 0,058 \\ \addlinespace
D-E & 700 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,034 \\ \addlinespace
D-F & 500 & $\frac{497}{12}$ & 100,20 & 113 & 0,068 \\ \addlinespace
F-G & 275 & $\frac{497}{12}$ & 100,20 & 113 & 0,037 \\ \addlinespace
G-H & 325 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,034 \\ \addlinespace
I-J & 325 & $\frac{994}{3}$ & 283,40 & 285 & 0,017 \\ \addlinespace
I-L & 150 & $\frac{497}{12}$ & 100,20 & 113 & 0,020 \\ \addlinespace
J-K & 300 & $\frac{497}{3}$ & 200,40 & 203,4 & 0,023 \\ \addlinespace
J-O & 200 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,021 \\ \addlinespace
K-N & 200 & $\frac{497}{6}$ & 141,70 & 144,6 & 0,021 \\ \addlinespace
L-M & 750 & $\frac{497}{12}$ & 100,20 & 113 & 0,101 \\
\bottomrule
\end{tabular}
\caption{De maten van de buizen in het distributiesysteem}
\label{table:distributiesysteem}
\end{table}
\lipsum[2]
\end{document}
切换到斜线形式可以使表格更加紧凑(并且更易读)。
\begin{tabular}{
@{}
l
S[table-format=4.0]
c
S[table-format=3.2]
S[table-format=3.1]
S[table-format=1.3]
@{}
}
\toprule
Buis & {Lengte} & Debiet & {Diameter} & {Handelsmaat} & {Drukverval} \\
& {(\unit{m})} & (\unit{m^3/h}) & {(\unit{mm})} & {diameter (\unit{mm})} & {(\unit{m})} \\
\midrule
A-R & 2360 & \num{1242,50} & 548,81 & 570 & 0,063 \\
A-B & 50 & $3479/6$ & 374,91 & 407 & 0,002 \\
A-M & 200 & \num{124,25} & 173,55 & 180,8 & 0,017 \\
A-I & 750 & $5467/12$ & 332,32 & 361,8 & 0,032 \\
B-C & 150 & $994/3$ & 283,40 & 285 & 0,008 \\
B-H & 425 & $497/3$ & 200,40 & 203,4 & 0,032 \\
C-D & 250 & $2485/12$ & 224,05 & 226,2 & 0,017 \\
C-G & 425 & $497/12$ & 100,20 & 113 & 0,058 \\
D-E & 700 & $497/6$ & 141,70 & 144,6 & 0,034 \\
D-F & 500 & $497/12$ & 100,20 & 113 & 0,068 \\
F-G & 275 & $497/12$ & 100,20 & 113 & 0,037 \\
G-H & 325 & $497/6$ & 141,70 & 144,6 & 0,034 \\
I-J & 325 & $994/3$ & 283,40 & 285 & 0,017 \\
I-L & 150 & $497/12$ & 100,20 & 113 & 0,020 \\
J-K & 300 & $497/3$ & 200,40 & 203,4 & 0,023 \\
J-O & 200 & $497/6$ & 141,70 & 144,6 & 0,021 \\
K-N & 200 & $497/6$ & 141,70 & 144,6 & 0,021 \\
L-M & 750 & $497/12$ & 100,20 & 113 & 0,101 \\
\bottomrule
\end{tabular}