将 latex 表标题更改为“S1 表”格式

将 latex 表标题更改为“S1 表”格式

我正在尝试在 LaTeX 中创建一个具有“S1 表”格式的表。如您所见,在我当前的 MWE 代码中,该表的标题为“表 1”:

\documentclass[10pt,letterpaper]{article}
   \begin{document}

    \begin{table}[h]
    \caption{Here is a practice table}
    {\setlength{\tabcolsep}{3pt} % Make column width smaller to fit page
     \begin{tabular}{llllll}
     \hline
     Name & Number & Color\\ \hline
     Name1 & Number1 & Color1\\   
     Name2 & Number2 & Color2\\
     Name3 & Number3 & Color3\\
     Name4 & Number4 & Color4\\ \hline
     \end{tabular}}
   \label{s1table}
   \end{table}

\end{document}

是否可以更改此格式,使标题改为“S1 表”。我见过一些示例,要求反向“表 S1”,但这对我的解决方案不起作用。我甚至见过另一个示例类似于我的问题,但解决方案对我来说仍然不清楚。任何建议都将不胜感激!

答案1

在此处输入图片描述

\documentclass[10pt,letterpaper]{article}
\usepackage{caption}                         % <--- added
\captionsetup[table]{name=SI table,          % <--- define caption name
                     skip=1ex, labelfont=bf} 
begin{document}
    \begin{table}[h]
    \centering
\caption{Here is a practice table}
\label{s1table}
\setlength{\tabcolsep}{3pt} % Make column width smaller to fit page
 \begin{tabular}{llllll}
    \hline
 Name  & Number  & Color  & \multicolumn{3}{c}{Num.}\\ 
    \hline
 Name2 & Number2 & Color2 & 1 & 2 & 3   \\
 Name3 & Number3 & Color3 & 1 & 2 & 3   \\
 Name4 & Number4 & Color4 & 1 & 2 & 3   \\ 
    \hline
 \end{tabular}
    \end{table}
\end{document}

有关标题名称的设置,请参阅包文档,部分2.8 名称,第 15 页。

答案2

您可以使用caption包并使用命令重新定义标签格式来执行此操作\DeclareCaptionLabelFormat。其中#1将替换为浮点数的名称(表格、图形等),并将#2替换为参考编号。

默认标签格式很简单#1 #2

在你的情况下,你需要在名称前加上数字并以 为前缀S,因此标签格式应该是这样的S#2 #1

因此,您的 MWE 看起来将是这样的:

\documentclass[10pt,letterpaper]{article}

\usepackage{caption}                            %<---
\DeclareCaptionLabelFormat{Sformat}{S#2 #1}     %<---
\captionsetup[table]{labelformat=Sformat}       %<---

\usepackage{cleveref}

\begin{document}
    \begin{table}[h]
    \centering
    \caption{Here is a practice table}
    \label{s1table}
    \setlength{\tabcolsep}{3pt} % Make column width smaller to fit page
    \begin{tabular}{llllll}
        \hline
        Name  & Number  & Color  & \multicolumn{3}{c}{Num.}\\ 
        \hline
        Name2 & Number2 & Color2 & 1 & 2 & 3   \\
        Name3 & Number3 & Color3 & 1 & 2 & 3   \\
        Name4 & Number4 & Color4 & 1 & 2 & 3   \\ 
        \hline
    \end{tabular}
\end{table}

When we refer to the table, we get \cref{s1table}.

\end{document}

在此处输入图片描述

这里我仅重新格式化表格标题。另请注意,如果您要使用cleveref,则必须单独配置它以匹配标题格式或其他格式。

相关内容