我正在尝试在我的 tex 文档中输入一些子图,如下所示:
%%% FIGURE %%%
\begin{figure}[!hptb]
\begin{center}
%\includegraphics[width=15cm]{query.jpeg}
\subfloat(a){\includegraphics[width=0.8\textwidth]{1.jpeg}}
\subfloat(b){\includegraphics[width=0.47\textwidth]{2.jpeg}}
\subfloat(c){\includegraphics[width=0.47\textwidth]{3.jpeg}}
\end{center}
\caption{\small bla bla bla}
\label{fig:f_fig}
\end{figure}
我正在使用的软件包是
\usepackage{url,hyperref,lineno,microtype,subcaption}
\usepackage{graphicx}
%For subfigures
\usepackage{caption}
\usepackage{subcaption}
我正在使用 overleaf。我使用的模板是: https://it.overleaf.com/latex/templates/template-for-frontiers-journal/myxxkvjwqhrv
我收到的错误是:Undefined subtype 'subfigure'
。
关于如何修复它有什么建议吗?
答案1
我找到了一个很好的替代方法,可以避免因子浮点或子图而导致错误。它包括使用表格。例如:
\documentclass[utf8]{frontiersSCNS}
%For figurers and subfigures
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\begin{document}
%%%FIGURE%%%
\begin{figure}[!htbp]
\centering
\begin{tabular}{c}
\includegraphics[width=0.3\textwidth]{1.jpeg}
\small(a)
\end{tabular}
\begin{tabular}{c}
\includegraphics[width=0.3\textwidth]{2.jpeg}
\small(b)
\end{tabular}
\caption
{%
\small bla bla bla}
\label{fig:test}%
\end{figure}
\end{document}
我希望这可以帮助其他使用(并且也在努力)该模板的研究人员。
答案2
使用最近的subcaption
软件包(版本 1.3),这项工作如预期的那样:
\documentclass{article}
%For figurers and subfigures
\usepackage{graphicx}
\usepackage[font=small]{caption}
\usepackage{subcaption}
\begin{document}
\begin{figure}[ht]
\centering
\subfloat[][]{\includegraphics[width=0.3\textwidth]{example-image-duck}}%{1.jpeg}}
\hfil
\subfloat[][]{\includegraphics[width=0.3\textwidth]{example-image-duck}}%{2.jpeg}}
\caption{bla bla bla}
\label{fig:test}%
\end{figure}
\end{document}
subfloat
有关文档中定义的宏的详细信息subcaption
,请参见第 7 节第 12 页。
附录
建议的解决方案不适用于frontiersSCNS
文档类。显然它调用并重新定义了许多包。其中包括caption
,subcaption
包。考虑到这一点,对上述解决方案进行了一点修改:
\documentclass[utf8]{frontiersSCNS}
\begin{document}
\begin{figure}[ht]
\centering
\small
\subfloat[][]{
\includegraphics[width=0.3\textwidth]{example-image-duck}} \\%{1.jpeg}}
(a)
\medskip
\includegraphics[width=0.3\textwidth]{example-image-duck} \\%{2.jpeg}}
(b)
\caption{bla bla bla}
\label{fig:test}%
\end{figure}
\end{document}
生产
我认为这不是想要的结果。在编译时它会subfigure
抱怨没有定义的。
但是,只有一个抱怨给出了以下解决方案:
\documentclass[utf8]{frontiersSCNS}
\begin{document}
\begin{figure}[ht]
\centering
\small
\subfloat[][]{
\includegraphics[width=0.3\textwidth]{example-image-duck}} \\%{1.jpeg}}
(a)
\medskip
\includegraphics[width=0.3\textwidth]{example-image-duck} \\%{2.jpeg}}
(b)
\caption{bla bla bla}
\label{fig:test}%
\end{figure}
\end{document}
不清楚您是否喜欢有一列文档。在这种情况下,您需要\onecolumn
在后面插入命令\begin{document}
并附上图像,例如minipage
:
\documentclass[utf8]{frontiersSCNS}
\usepackage{lipsum}
\begin{document}
\onecolumn
\lipsum[66]
\begin{figure}[ht]
\small
\begin{minipage}{0.5\textwidth}
\centering
\includegraphics[width=0.6\textwidth]{example-image-duck} \\%{1.jpeg}}
(a)
\end{minipage}%
\begin{minipage}{0.5\textwidth}
\centering
\includegraphics[width=0.6\textwidth]{example-image-duck} \\%{2.jpeg}}
(b)
\end{minipage}
\caption{bla bla bla}
\label{fig:test}%
\end{figure}
\end{document}
如果您喜欢在图像的右侧添加子标题,就像您在编译答案时所得到的那样,您只需要在命令\\
后将其删除\includegraphics
。