子图标题问题

子图标题问题

我正在尝试在一个图形中包含子图形,比如图 1,下面是我现在的代码。问题是,在我编译 tex 后,它没有显示,在图形下显示以下标题 Fig1a:fishfigure 和 Fig1a:catfigure,而是显示:以下 (a)fishfigure (b)catfigure...

有人知道问题是什么吗?

\begin{figure}
\centering
\subfigure[fish figure]{%
\includegraphics[width=0.45\textwidth]{fish}%
\label{fig:fish}%
}
\hfil
\subfigure
[cat figure]{%
\includegraphics[width=0.45\textwidth]{cat}%
\label{fig:cat}%
}
\hfil
\subfigure
[dogfigure]{%
\includegraphics[width=0.45\textwidth]{dog}%
\label{fig:dog}%
       }
     \end{figure}

答案1

使用subcaption包而不是过时的subfigure,重新定义\thesubfigure并声明使用标签所需的格式\DeclareCaptionLabelFormat

举个小例子,使用\subcaptionbox(另一个选择是使用subfigure 环境subcaption):

\documentclass{article} 
\usepackage[demo]{graphicx} 
\usepackage{subcaption}

\makeatletter
\renewcommand\thesubfigure{\thefigure(\alph{subfigure})}
\renewcommand\p@subfigure{}
\makeatother
\DeclareCaptionLabelFormat{prefixsubfig}{Fig#1#2:}
\captionsetup[subfigure]{labelformat=prefixsubfig}

\begin{document} 

\begin{figure}
\centering
\subcaptionbox{fish figure\label{fig:fish}}{%
  \includegraphics[width=0.45\textwidth]{fish}}\hfill
\subcaptionbox{cat figure\label{fig:cat}}{%
\includegraphics[width=0.45\textwidth]{cat}}\par
\subcaptionbox{dogfigure\label{fig:dog}}{%
  \includegraphics[width=0.45\textwidth]{dog}}
\end{figure}

As we see in subfigures~\ref{fig:fish}, \ref{fig:cat}, and~\ref{fig:dog}

\end{document}

在此处输入图片描述

选项demo只是graphicx用黑色矩形替换实际图形;不是在实际文档中使用该选项。

相关内容