使用合并行命令多行后如何不删除表格标题?

使用合并行命令多行后如何不删除表格标题?

你好,乳胶和 texmaker 专家

我目前对乳胶还不熟悉,在使用乳胶中的多行函数后,很难在不穿过表格标题的情况下向表格中添加水平线(它看起来像带有直线的文本,而这是我不想要的)。

下面是我的代码示例:

\begin{table}[H]
\centering
\small
\caption{Refrigerant properties}
\begin{adjustbox}{width=\textwidth}
    \begin{tabular}{|c|c|c|c|c|}
    \hline 
    \multirow{2}{*}{Name}  & \multirow{2}{*}{Chemical Symbol} & \multirow{2}{*}{Boiling Point at atmospheric pressure C} & \multicolumn{2}{c|}{Absolute Saturation Pressure $kPa$}\\ 
    \hline
    & & & $5C$ & $50C$\\ 
    \hline 
    $Refrigerant 717$ & $NH_{3}$ & $-33.4$ & $516$ & $2030$\\ 
    \hline 
    $Refrigerant 11$ & $CCL_{3}F$ & $+23.9$ & $49$ & $235$\\ 
    \hline 
    $Refrigerant 12$ & $CCl_{2}F_{2}$ & $-30$ & $362$ & $1200$\\ 
    \hline 

    \end{tabular} 
\end{adjustbox}
\end{table}

下面是合并行之后删除标题的图片 标题用水平线划掉

我将非常感激任何有关上述问题的帮助。谢谢 Mat

答案1

我建议进行以下改进,使用siunitx(用于将数字列中的小数点与S列类型对齐,以及正确输入单位)、makecell允许在标准单元格中换行、caption用于标题和表格之间的正确间距,以及其中一个专用的化学包:

\documentclass{article}
\usepackage{caption, multirow, makecell}
\usepackage{siunitx}
\usepackage{mhchem}
\usepackage{float}
\usepackage{adjustbox}

\begin{document}

\begin{table}[H]
\centering
\small
\setlength{\extrarowheight}{2pt}
\captionsetup{skip = 4pt}
\sisetup{table-number-alignment=center, table-format=5.0}
\caption{Refrigerant properties}
    \begin{tabular}{|l|c|S[table-format =-2.1]|*{2}{S|}}
    \hline
    \multirowcell{3}{Name} & \multirowcell{3}{Chemical\\ Symbol} & {\multirowcell{3}{Boiling Point at \\ atmospheric \\ pressure (\si{\celsius})}} & \multicolumn{2}{c|}{\makebox[0pt]{\makecell{Absolute\\ Saturation\\ Pressure (\si{\kPa})}}}\\
    \cline{4-5}
    & & & \SI{5}{\celsius} & \SI{50}{\celsius}\\
    \hline
    Refrigerant 717 & \ce{NH3} & -33.4 & 516 & 2030 \\
    \hline
    Refrigerant 11 & \ce{CCl3F} & +23.9 & 49 & 235 \\
    \hline
    Refrigerant 12 & \ce{CCl2F2} & -30 & 362 & 1200 \\
    \hline

    \end{tabular}
\end{table}

\end{document} 

\在此处输入图片描述

答案2

表格中有几个地方可以改进。首先:对你的问题的回答是:在第二行的开头使用\cline{4-5}而不是。\hline

我想建议

  • 不过,对于剩下的行,使用booktabs(包)
  • 也许使用threeparttable(包)来移动一些信息,
  • 不要把名字放在数学模式中
  • 用于siunitx单位和包含数字的列
  • 使用化学公式包(或这里提出的方法之一:排版化学式
  • 考虑让表浮动(即[H]从中删除table

当然,这一切都取决于你,但只是为了给你一个印象:

\documentclass{article}

\usepackage{array,booktabs}
\usepackage[para]{threeparttable}
\renewcommand\TPTnoteSettings{\footnotesize}

\usepackage{chemformula,siunitx}

\begin{document}

\begin{table}
  \centering
  \begin{threeparttable}
    \caption{Refrigerant properties}
    \begin{tabular}{llSSS}
      \toprule
        Name &
        Chemical Symbol &
        {$T_b$ in \si{\celsius}\tnote{a}} &
        \multicolumn{2}{c}{$p$ in \si{\kilo\pascal}\tnote{b}} \\
        \cmidrule{4-5}
        & &  & {\SI{5}{\celsius}} & {\SI{50}{\celsius}} \\ 
      \midrule
        Refrigerant 717 & \ch{NH3}    & -33.4 & 516 & 2030 \\ 
        Refrigerant 11  & \ch{CCl3F}  & +23.9 & 49  & 235 \\ 
        Refrigerant 12  & \ch{CCl2F2} & -30   & 362 & 1200 \\ 
      \bottomrule
    \end{tabular}
    \begin{tablenotes}
      \item[a] boiling point at atmospheric pressure
      \item[b] absolute saturation pressure
    \end{tablenotes}
  \end{threeparttable}
\end{table}

\end{document}

在此处输入图片描述

相关内容