我正在使用该subcaption
包并为每个子图写一个标题。为了获得对“图 1a”的引用,我还必须在所有子图下方写一个“大标题”。但我不想总是写这个“大标题”。无论如何,我希望我的图有标签“图 1a”。
例子:
\documentclass[a4paper]{article}
\usepackage{mwe}
\usepackage{subcaption}
\begin{document}
\begin{figure}[tbp]
\begin{subfigure}[t]{0.48\linewidth}
\includegraphics[width=1\textwidth]{example-image-a}
\caption{An Elephant.}
\label{fig:elephant}
\end{subfigure}
\begin{subfigure}[t]{0.48\linewidth}
\includegraphics[width=1\textwidth]{example-image-b}
\caption{A Mouse.}
\label{fig:mouse}
\end{subfigure}
\caption{"Big caption". How can I avoid this one and get the label "Fig. 1a"?}
\end{figure}
\end{document}
(我的问题不是关于数字的格式(例如“1a”或“1.a”)而是关于“如何在我的“1a”引用中得到“1”)
答案1
这是产生所需输出的一种方法;可能还有更好的方法。
无论您在哪里想要在缺少 的subfigure
a 中的 s的编号系统,请在相关环境的开头使用下面我的代码中定义的命令。figure
\caption
figure
\nocaption
请参阅subcaption
手动的更多细节。
\documentclass[a4paper]{article}
\usepackage[demo]{graphicx}
\usepackage{subcaption}
\makeatletter
\newcommand\nocaption{%
\renewcommand\p@subfigure{}
\renewcommand\thesubfigure{\thefigure\alph{subfigure}}
}
\makeatother
\begin{document}
\begin{figure}[tbp]
\nocaption
\begin{subfigure}[t]{0.48\textwidth}
\includegraphics{elephant}
\caption{An Elephant.}
\label{fig:elephant}
\end{subfigure}
\begin{subfigure}[t]{0.48\textwidth}
\includegraphics{mouse}
\caption{A Mouse.}
\label{fig:mouse}
\end{subfigure}
%\caption{"Big caption". How can I avoid this one and get the label "Fig. 1a"?}
\end{figure}
Fig.~\ref{fig:elephant} shows an elephant; Fig.~\ref{fig:mouse}, a mouse.
\end{document}