表格格式

表格格式

我正在桌子上工作

\documentclass{article}
\pagestyle{empty}
\usepackage[landscape]{geometry}
\usepackage{multirow}
\usepackage{booktabs}
\newcommand{\ra}[1]{\renewcommand{\arraystretch}{#1}}
\begin{document}

\begin{table}
  \centering
  \ra{1.5}
  \caption{Caption}
  \begin{tabular}{@{}clllclll@{}}
    \hline 
     File
    &\multicolumn{2}{c}{\textbf{Logistic Regression}} &\phantom{abc}
    &\multicolumn{2}{c}{\textbf{Support Vector Machine}} &\\
    \cline{2-4} \cline{6-8} 
    & sensitivity & specificity & total accuracy && sensitivity 
    & specificity & total accuracy\\ 
   \hline
   $100$ & 0.0790 & 0.1692 & 0.2945 && 0.3670 & 0.7187 & 3.1815 \\
   $101$ & -0.8651& 50.0476& 5.9384&& -9.0714& 297.0923& 46.2143\\
   $102$ & 124.2756& -50.9612& -14.2721&& 128.2265& -630.5455& -381.0930\\
   $103$ & 0.0357& 1.2473& 0.2119&& 0.3593& -0.2755& 2.1764\\
   $104$ & -17.9048& -37.1111& 8.8591&& -30.7381& -9.5952& -3.0000\\
   $105$ & 105.5518& 232.1160& -94.7351&& 100.2497& 141.2778& -259.7326\\
   \hline
 \end{tabular}
\end{table}
\end{document}

输出是在此处输入图片描述 我在格式化表格时遇到了这些问题

  1. (完成)为第一列命名
  2. (已完成)将“logistic reg”和“支持向量机”的单词居中
  3. 输出的边距非常小,就像图片一样。
  4. 使表格看起来更专业的其他建议。

  5. 如何在第一列右侧插入两列额外列

  6. (完成)关于“逻辑回归”和“敏感性、特异性……”的“文件”中心

感谢您的帮助!

答案1

1. 为第一列命名
已经有一个了,即“文件”。您想将其降低到第二行吗?我不会,因为它在层级上与“物流...”和“支持...”处于同一级别。

2. 将“逻辑回归”和“支持向量机”的单词居中
好吧,它们已经居中了,只是不在正确的列上。在您的代码中,它们分别位于 下方的前 2 列上\cline。将 更改为\multicolumn{2}\multicolumn{3}您可能会明白我的意思。

3. 输出像图片一样的非常小的边距。
geometry如果您正在讨论页面几何形状, 请检查选项,例如

\usepackage[landscape,scale=0.95]{geometry}

仅供参考,geometry它使您能够更改单个页面的几何形状,然后重置通常的几何形状。

4. 使表格看起来专业的其他建议。
使用caption包来纠正表格标题的间距:虽然表格标题应该放在(表格)内容之前(就像您做的那样)并且图片标题应该放在图像之后,但默认情况下 LaTeX 将垂直空间放在标题标签之前而不是之后。

使用包(您正在加载但不使用的包)中的\toprule、和\midrule,而不是和。\cmidrule\bottomrulebooktabs\hline\cline

鉴于您要显示要比较的数字,请使比较结果易于观察:将包含所述数字的列对齐,以便对齐小数。为了获得更好的结果,请使用dcolumn如下包乔恩的答案是自动对齐小数点上的数字并正确格式化它们(包括使用标志,而不是连字符)。仅供参考,您可以siunitx在文档的其余部分使用包来格式化数字(使用\num)和单位(使用\si),但它们在tabulars 中的使用相当繁琐。此外,为了便于阅读,单位应该放在您的tabular's 头部,而不是数据本身内。

删除不必要的@{}和多余的中间列;除非你确切地知道是什么以及为什么,否则 (La)TeX 可以很好地完成排版 :)

删除\arraystretch/ \ra“技巧”。

鉴于“文件”标题在结构上与两个“回归”标题处于同一级别,请使用相同的字体。此外,请将所有标题都大写(或不大写,但要连贯)。

最后,为了简化您自己的编码,我建议您使用空格格式化表格内容,以便在视觉上分隔列并与您的输出相似。我发现以这种方式制作的表格编辑起来要容易得多,尤其是当您必须在创建文档几周/几个月后对其进行修改时。

综合起来

\documentclass{article}
\usepackage[landscape]{geometry}
\usepackage{booktabs,caption,dcolumn}
\newcolumntype{d}[1]{D{.}{.}{4}}% column type for figures with 4 decimals
\newcommand{\subhead}[1]{\multicolumn{1}{c}{#1}}% to format sub-headings of d-type columns
\begin{document}
\begin{table}
  \centering
  \caption{Caption}
  \begin{tabular}{cd{4}d{4}d{4}d{4}d{4}d{4}}
    \toprule 
    \textbf{File}&                       \multicolumn{3}{c}{\textbf{Logistic Regression}}&                    \multicolumn{3}{c}{\textbf{Support Vector Machine}}\\
    \cmidrule(rl){2-4} \cmidrule(rl){5-7} 
                 & \subhead{Sensitivity}& \subhead{Specificity}& \subhead{Total accuracy}& \subhead{Sensitivity}& \subhead{Specificity}& \subhead{Total accuracy}\\ 
    \midrule
         100     &                0.0790&                0.1692&                   0.2945&                0.3670&                0.7187&                    3.1815\\
         101     &             -  0.8651&               50.0476&                   5.9384&             -  9.0714&              297.0923&                   46.2143\\
         102     &              124.2756&             - 50.9612&                 -14.2721&              128.2265&             -630.5455&                 -381.0930\\
         103     &                0.0357&                1.2473&                   0.2119&                0.3593&             -  0.2755&                    2.1764\\
         104     &             - 17.9048&             - 37.1111&                   8.8591&             - 30.7381&             -  9.5952&                 -  3.0000\\
         105     &              105.5518&              232.1160&                 -94.7351&              100.2497&              141.2778&                 -259.7326\\
   \bottomrule
 \end{tabular}
\end{table}
\end{document}

得出的结果是:

结果

答案2

在很大程度上,表格是一个品味问题。但我认为这与发布的图像一致,但在展示上有点乏味。虽然您加载了booktabs,但您并没有使用它(但我同意您应该使用它); 也是如此multirow(无论如何,它在本表中没有任何用处);我看不出设置\arraystretch为 1.5 有什么好处;我仍然不明白为什么您只想要一些数字作为“数学”。因此,首先:

\documentclass{article}
\pagestyle{empty}
\usepackage[landscape]{geometry}
\usepackage{booktabs}
\newcommand{\ra}[1]{\renewcommand{\arraystretch}{#1}}
\usepackage{dcolumn}
\newcolumntype{d}[1]{D{.}{.}{4}}
\newcommand{\mlc}[1]{\multicolumn{1}{c}{#1}}

\begin{document}

\begin{table}
  \centering
%  \ra{1.5}% <-- why?
  \caption{Caption}
  \begin{tabular}{@{}c d{4} d{4} d{4} d{4} d{4} d{4} @{}}
    \toprule
    File
    & \multicolumn{3}{c}{\textbf{Logistic Regression}}
    & \multicolumn{3}{c}{\textbf{Support Vector Machine}}\\
    \cmidrule(rl){2-4} \cmidrule(rl){5-7}

    & \mlc{sensitivity} & \mlc{specificity} & \mlc{total accuracy}
    & \mlc{sensitivity} & \mlc{specificity} & \mlc{total accuracy}\\
    \midrule
    $100$ & 0.0790   & 0.1692   & 0.2945   & 0.3670   & 0.7187    & 3.1815 \\
    $101$ & -0.8651  & 50.0476  & 5.9384   & -9.0714  & 297.0923  & 46.2143\\
    $102$ & 124.2756 & -50.9612 & -14.2721 & 128.2265 & -630.5455 & -381.0930\\
    $103$ & 0.0357   & 1.2473   & 0.2119   & 0.3593   &  -0.2755  & 2.1764\\
    $104$ & -17.9048 & -37.1111 & 8.8591   & -30.7381 & -9.5952   & -3.0000\\
    $105$ & 105.5518 & 232.1160 & -94.7351 & 100.2497 & 141.2778  & -259.7326\\
   \bottomrule

  \end{tabular}
\end{table}

\end{document}

在此处输入图片描述

相关内容