爱喝奶的milk 2024-08-23 21:29 采纳率: 33.3%
浏览 79
已结题

LaTeX中三线表颜色填充的问题

生成三线表的代码如下图中的图1,产生的效果是图2,可以看见三线表的颜色没填满

\begin{table}[H]
    \centering
    \begin{threeparttable}
        \begin{tabularx}{\textwidth}{
            >{\centering\arraybackslash}m{8em}
            >{\centering\arraybackslash}m{5em}
            >{\centering\arraybackslash}m{5em}
            >{\centering\arraybackslash}m{5em}
            >{\centering\arraybackslash}X
            }
            \toprule
            \rowcolor{lightgray}
            & \textbf{follower} & \textbf{level} & \textbf{views} & \textbf{likes} \\
            \midrule
            \rowcolor{lightblue}
            \textbf{斯皮尔曼相关系数} & 0.8701 & 0.2073 & 0.8075 & 0.9723 \\
            \textbf{p值} & 0.0000 & 2.2334 & 0.0000 & 0.0000 \\
            \bottomrule
        \end{tabularx}
    \end{threeparttable}
\end{table}

img

下方chktex的检查可以忽略(之前一直在警告,明明没问题的)

xelatex编译没问题,警告和错误都没有,正常生成pdf,但是三线表的表头颜色没填满,请问有没有什么解决方案

img

之前询问过GPT,一共进行了三次修改,但是都没有效果。

第1次是告诉我使用cellcolor代替rowcolor,使用后发现没有任何变化。

第2次说是设置行高,但是我发现行高无论如何设置颜色的高度总会跟他差那么一点,留下这两个小空隙,而且留下空隙的高度基本上都是这样。

第3次说是设置内边距,我把内边距设为零之后也没有什么用。

  • 写回答

1条回答 默认 最新

  • 吃不了席 2024-08-23 21:30
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    你可以尝试使用\cellcolor命令来填充表格的颜色。将原来的\rowcolor替换为\cellcolor,并确保在每个单元格内都添加了颜色。以下是修改后的代码:

    \begin{table}[H]
        \centering
        \begin{threeparttable}
            \begin{tabularx}{\textwidth}{
                >{\centering\arraybackslash}m{8em}
                >{\centering\arraybackslash}m{5em}
                >{\centering\arraybackslash}m{5em}
                >{\centering\arraybackslash}m{5em}
                >{\centering\arraybackslash}X
                }
                \toprule
                \cellcolor{lightgray} & \textbf{follower} & \textbf{level} & \textbf{views} & \textbf{likes} \\n            \midrule
                \cellcolor{lightblue} \textbf{斯皮尔曼相关系数} & 0.8701 & 0.2073 & 0.8075 & 0.9723 \\n            \textbf{p值} & 0.0000 & 2.2334 & 0.0000 & 0.0000 \\n            \bottomrule
            \end{tabularx}
        \end{threeparttable}
    \end{table}
    

    这样应该可以解决三线表颜色填充不完整的问题。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月23日
  • 修改了问题 8月23日
  • 创建了问题 8月23日