我有这个代码
% !TeX encoding = UTF-8
\documentclass[utf8]{article}
\usepackage{multirow}
\begin{document}
\begin{table}[htp]
\centering
\begin{tabular}{|l|c|c|}
\hline
& Weighting & Cost (\$) \\ \hline
\multirow{5}{*}{Material costs} & 0 & $[10000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[7500,\,10000[$ \\ \cline{2-3}
& 2.5 & $[5000,\,7500[$ \\ \cline{2-3}
& 3.75 & $[2500,\,5000[$ \\ \cline{2-3}
& 5 & $[0,2500[$ \\ \hline
\multirow{5}{*}{Labor costs} & 0 & $[40000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[30000,\,40000[$ \\ \cline{2-3}
& 2.5 & $[20000,\,30000[$ \\ \cline{2-3}
& 3.75 & $[10000,\,20000[$ \\ \cline{2-3}
& 5 & $[0,10000[$ \\
\hline
\end{tabular}
\caption{Scale for the cost of the project}
\label{tab:project_cost}
\end{table}
\end{document}
它产生了这个:
如您所见,单元格中的边距太小。我们甚至可以说它不存在,因此很难看到括号([
)
我怎样才能增加利润?
答案1
在这种情况下,简单的\arraystretch
重新定义就足够了。
% !TeX encoding = UTF-8
\documentclass[utf8]{article}
\usepackage{multirow}
\begin{document}
\begin{table}[htp]
\renewcommand\arraystretch{1.3}
\centering
\begin{tabular}{|l|c|c|}
\hline
& Weighting & Cost (\$) \\ \hline
\multirow{5}{*}{Material costs} & 0 & $[10000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[7500,\,10000[$ \\ \cline{2-3}
& 2.5 & $[5000,\,7500[$ \\ \cline{2-3}
& 3.75 & $[2500,\,5000[$ \\ \cline{2-3}
& 5 & $[0,2500[$ \\ \hline
\multirow{5}{*}{Labor costs} & 0 & $[40000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[30000,\,40000[$ \\ \cline{2-3}
& 2.5 & $[20000,\,30000[$ \\ \cline{2-3}
& 3.75 & $[10000,\,20000[$ \\ \cline{2-3}
& 5 & $[0,10000[$ \\
\hline
\end{tabular}
\caption{Scale for the cost of the project}
\label{tab:project_cost}
\end{table}
\end{document}
原始方法
我刚刚>{}
向一列添加了一个指令,该指令添加了一个\strut
已由 填充的2pt
上方和下方。需要array
包才能使用>
-directive 功能,并stackengine
使用\strut
填充2pt
。
然而,OP 指出这种方法结合会\multirow
导致第一列不垂直居中。
% !TeX encoding = UTF-8
\documentclass[utf8]{article}
\usepackage{array,multirow,stackengine}
\begin{document}
\begin{table}[htp]
\centering
\begin{tabular}{|>{\addstackgap[2pt]{\strut}}l|c|c|}
\hline
& Weighting & Cost (\$) \\ \hline
\multirow{5}{*}{Material costs} & 0 & $[10000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[7500,\,10000[$ \\ \cline{2-3}
& 2.5 & $[5000,\,7500[$ \\ \cline{2-3}
& 3.75 & $[2500,\,5000[$ \\ \cline{2-3}
& 5 & $[0,2500[$ \\ \hline
\multirow{5}{*}{Labor costs} & 0 & $[40000,\,\infty[$ \\ \cline{2-3}
& 1.25 & $[30000,\,40000[$ \\ \cline{2-3}
& 2.5 & $[20000,\,30000[$ \\ \cline{2-3}
& 3.75 & $[10000,\,20000[$ \\ \cline{2-3}
& 5 & $[0,10000[$ \\
\hline
\end{tabular}
\caption{Scale for the cost of the project}
\label{tab:project_cost}
\end{table}
\end{document}
答案2
另一种可能性是cellspace
,它为以字母为前缀的说明符的列中的单元格定义最小垂直填充S
(或者C
如果您加载siunitx
):
\documentclass[utf8]{article}
\usepackage{multirow}
\usepackage{amsmath}
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{3pt}
\begin{document}
\begin{table}[htp]
\centering
\begin{tabular}{|l|>{$}Sc<{$}|>{$}Sc<{$}|}
\hline
& \text{Weighting} & \text{Cost (\$)} \\ \hline
\multirow{5}{*}[-12pt]{Material costs} & 0 & [10000, \infty[ \\ \cline{2-3}
& 1.25 & [7500, 10000[ \\ \cline{2-3}
& 2.5 & [5000, 7500[ \\ \cline{2-3}
& 3.75 & [2500, 5000[ \\ \cline{2-3}
& 5 & [0,2500[ \\ \hline
\multirow{5}{*}[-12pt]{Labor costs} & 0 & [40000, \infty[ \\ \cline{2-3}
& 1.25 & [30000, 40000[ \\ \cline{2-3}
& 2.5 & [20000, 30000[ \\ \cline{2-3}
& 3.75 & [10000, 20000[ \\ \cline{2-3}
& 5 & [0,10000[ \\
\hline
\end{tabular}
\caption{Scale for the cost of the project}
\label{tab:project_cost}
\end{table}
\end{document}