表格中的标题重叠

表格中的标题重叠

下表中的表头为什么重叠:enter image description here我该如何改进它?

\begin{table}[H]
        \centering
        \sisetup{table-format=1.3e-2, table-alignment=center, tight-spacing}
        \setlength{\tabcolsep}{3pt}
        \small
        \centering

        \sisetup{detect-weight,mode=text}
        \renewrobustcmd{\bfseries}{\fontseries{b}\selectfont}
        \renewrobustcmd{\boldmath}{}
        % abbreviation
        \newrobustcmd{\B}{\bfseries}
        % shorten the intercolumn spaces
        \addtolength{\tabcolsep}{-4.1pt}

        \begin{tabularx}{\linewidth}{X cSS[table-format=1.5] SS[table-format=1.5]}
            \toprule
            \thead {Algorithm\\ Name}  & {\thead{ABC Dataset \\ Name} }& {\thead{Bxxx ABS Txx\\ aaaa $80\%$ }} & {\thead{Mxxx YYYYYYY Tcxx\\ Tzzz $80\%$} }
            & {\thead{Bxxx sdsdf Tfds\\Tdfs $90\%$}} \\ [0.5ex]
            \midrule
            ABCD & XXXXX YYY & 0.222 & 0.228 & \B 0.230 \\
            ABCD & DEFG       & 0.222 & \B 0.282 & 0.222 \\
            ABCD & ABCD       & 0.992 & 0.992 & \B 0.998 \\
            ABCD & XXXXX Y    & 0.992 & 0.992 & \B 0.992 \\ 
            DEF  & XXXXX Hand & 0.220 & \B 0.222 & 0.222 \\
            DEF  & DEFG       & 0.223 & 0.232 & \B 0.22 \\
            DEF  & ABCD       & 0.999 & \B 2.000 & 0.999 \\
            DEF  & XXXXX YY   & 0.998 & \B 0.999 & 0.998 \\ [2ex]
            \bottomrule
        \end{tabularx}
        \caption{Cfdfsd (In \textbf{Bold} the gsfdsd per line)}
    \label{table:4}
    \end{table}

答案1

您的S列不一致table-format:默认情况下,您的格式为科学计数法,表格中的一些列有 5 位小数,但您实际上只有 3 位。此外,您有一列未使用S。另外,最好将第二列设置为X列。

这是我建议的代码:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\usepackage{etoolbox}
\usepackage{tabularx, booktabs, makecell} %

\begin{document}

\begin{table}[!htb]
    \centering
    \sisetup{table-format=1.3, table-number-alignment=center, tight-spacing,}% table-column-width =2.5cm 
    \setlength{\tabcolsep}{3pt}
    \small
    \centering

    \sisetup{detect-weight,mode=text}
    \renewrobustcmd{\bfseries}{\fontseries{b}\selectfont}
    \renewrobustcmd{\boldmath}{}
    % abbreviation
    \newrobustcmd{\B}{\bfseries}
    % shorten the intercolumn spaces
    \setlength{\tabcolsep}{4pt}

    \begin{tabularx}{\linewidth}{l>{\centering}XSSS}
        \toprule
        \thead {Algorithm\\ Name} & {\thead{ABC Dataset \\ Name} }& {\thead{Bxxx ABS Txx \\ aaaa $80\%$ }} & {\thead{Mxxx YYYYYYY\\ Tcxx Tzzz $80\%$} }
        & {\thead{Bxxx sdsdf Tfds \\Tdfs $90\%$}} \\ [0.5ex]
        \midrule
        ABCD & XXXXX YYY & 0.222 & 0.228 & \B 0.230 \\
        ABCD & DEFG & 0.222 & \B 0.282 & 0.222 \\
        ABCD & ABCD & 0.992 & 0.992 & \B 0.998 \\
        ABCD & XXXXX Y & 0.992 & 0.992 & \B 0.992 \\
        DEF & XXXXX Hand & 0.220 & \B 0.222 & 0.222 \\
        DEF & DEFG & 0.223 & 0.232 & \B 0.22 \\
        DEF & ABCD & 0.999 & \B 2.000 & 0.999 \\
        DEF & XXXXX YY & 0.998 & \B 0.999 & 0.998 \\ [2ex]
        \bottomrule
    \end{tabularx}
\end{table}

\end{document} 

enter image description here

答案2

我想你喜欢这样的餐桌:

enter image description here

它基于我的答案对于你之前的问题

\documentclass{article}
\usepackage{booktabs, makecell}
\usepackage{siunitx}

\usepackage{etoolbox}%  <---
\newcommand{\B}{\fontseries{b}\selectfont} %  <---
\robustify\B%  <---

\begin{document}
    \begin{table}
    \centering
\sisetup{detect-weight} %  <---
    \centering
\begin{tabular}{l c *{3}{S[table-format=1.3]}} %  <---
    \toprule
\thead{Algorithm\\ Name}
     & \thead{ABC Dataset \\ Name} 
                        & {\thead{Bxxx ABS Txx \\ 
                                 aaaa \SI{80}{\%} }} 
                                & {\thead{Mxxx YYYYYYY\\ 
                                          Tcxx Tzzz \SI{80}{\%} }}
                                            & {\thead{Bxxx sdsdf Tfds \\
                                                      Tdfs \SI{90}{\%}}}
                                                        \\                                               
     \midrule
    ABCD & XXXXX YYY    & 0.222 &    0.228 & \B 0.230 \\
    ABCD & DEFG         & 0.222 & \B 0.282 &    0.222 \\
    ABCD & ABCD         & 0.992 &    0.992 & \B 0.998 \\
    ABCD & XXXXX Y      & 0.992 &    0.992 & \B 0.992 \\
    DEF  & XXXXX Hand   & 0.220 & \B 0.222 &    0.222 \\
    DEF  & DEFG         & 0.223 &    0.232 & \B 0.22  \\
    DEF  & ABCD         & 0.999 & \B 2.000 &    0.999 \\
    DEF  & XXXXX YY     & 0.998 & \B 0.999 &    0.998 \\
    \bottomrule
    \end{tabular}
    \caption{11 my caption}
\label{table:3}
    \end{table}
\end{document}

笔记:

  • 总是提供完整的小文档,我们可以在计算机中复制和编译。例如,你的代码片段没有提供序言中的重要信息,或者你把它们放在了文档中的错误位置
  • 如果你有后续问题(如你的问题),请提供上一个问题的链接
  • 如果您接受上一个问题的答案,请在类似的表格设计中使用它

编辑: 抱歉,在第一个版本的回答中我没有考虑你的表格主体,现在我纠正一下。这样你会遇到一些新的问题:

  • 表格明显比你之前的问题更宽
  • 对于列标题使用theads来自makecell包(类似于伯纳德在他的回答中做)因为你使用siunitx包,所以你应该在设置百分比值时使用它。

相关内容