包含数学模式的表格单元格中的边距更好

包含数学模式的表格单元格中的边距更好

我有这个代码

% !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} 

在此处输入图片描述

相关内容