![為什麼我會收到這個 badbox 錯誤?](https://rvso.com/image/305788/%E7%82%BA%E4%BB%80%E9%BA%BC%E6%88%91%E6%9C%83%E6%94%B6%E5%88%B0%E9%80%99%E5%80%8B%20badbox%20%E9%8C%AF%E8%AA%A4%EF%BC%9F.png)
\begin{table}[H]
\centering
\begin{tabular}{|p{2cm}|p{2cm}|p{2cm}|p{2cm}|p{2cm}|}
\hline
Applied voltage amplitude & Voltage amplitude at clamper diode & Average Voltage using PMMC & DC Voltage using digital multimeter \\
\hline
20 & 10 & 13 & 23 \\
\hline
\end{tabular}
\end{table}
我收到這個錯誤。
Underfull \hbox (badness 10000) in paragraph at lines 66--66
Underfull \hbox (badness 4518) in paragraph at lines 66--67
答案1
它無法完全對齊列中的行,\parbox
因為它們太窄(一個字跨過)。在每列上向右排列可以消除未滿的框框。
我還使用 a\tabularnewline
而不是\\
,以免\\
被解釋為 內的宏\parbox
而不是 的一部分tabular
。
而且,正如 Werner 指出的那樣,5 列不是必需的,因此我在定義中將其設為 4 tabular
。
\documentclass{article}
\begin{document}
\begin{table}[H]
\centering
\begin{tabular}{|p{2cm}|p{2cm}|p{2cm}|p{2cm}|}
\hline
\raggedright Applied voltage amplitude & \raggedright Voltage amplitude at clamper diode &
\raggedright Average Voltage using PMMC & \raggedright DC Voltage using digital multimeter
\tabularnewline
\hline
20 & 10 & 13 & 23 \\
\hline
\end{tabular}
\end{table}
\end{document}
答案2
makecell
使用;您可以獲得更好的結果出於技術原因,我還使\makecell
命令變得健壯(這避免了額外的大括號)。
我顯示了表格的兩個版本,一種帶有booktabs
命令且沒有垂直規則,另一種帶有盒裝單元格。我毫不懷疑第一個更好。
與其猜測寬度,不如將計算留給 TeX。請查閱 的文檔,siunitx
了解如何調整參數以table-format
適應實際資料。它允許您在小數點自動對齊。
\documentclass{article}
\usepackage{makecell,booktabs,etoolbox}
\usepackage{siunitx}
\robustify{\makecell}
\begin{document}
\begin{table}[htp]
\centering
\begin{tabular}{% adjust the column formats for the real data
S[table-format=2.0]
S[table-format=2.0]
S[table-format=2.0]
S[table-format=2.0]
}
\toprule
\makecell{Applied \\ voltage \\ amplitude} &
\makecell{Voltage \\ amplitude at \\ clamper \\ diode} &
\makecell{Average \\ voltage \\ using PMMC} &
\makecell{DC voltage \\ using digital \\ multimeter} \\
\midrule
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
\bottomrule
\end{tabular}
\end{table}
\begin{table}[htp]
\centering
\begin{tabular}{% adjust the column formats for the real data
|S[table-format=2.0]
|S[table-format=2.0]
|S[table-format=2.0]
|S[table-format=2.0]|
}
\hline
\makecell{Applied \\ voltage \\ amplitude} &
\makecell{Voltage \\ amplitude at \\ clamper \\ diode} &
\makecell{Average \\ voltage \\ using PMMC} &
\makecell{DC voltage \\ using digital \\ multimeter} \\
\hline
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
20 & 10 & 13 & 23 \\
\hline
\end{tabular}
\end{table}
\end{document}
不要使用該[H]
選項table
;如果你這樣做你會後悔的。