如何在 AASTex 文档类中格式化/包含子图?

如何在 AASTex 文档类中格式化/包含子图?

我一直在使用基本的“article”类编写文档,但现在我需要将其更改为“aastex”。当我这样做时,我的子图不起作用。aastex 有没有办法允许子图?

我试图使我的原始文档尽可能保持简洁,因此我很确定标题和子标题是我为此包含的唯一包。

\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{figure}
        \centering
        \begin{subfigure}[b]{0.45\textwidth}
                \centering
                \includegraphics[width=\textwidth]{fig1.pdf}
                \caption{Caption 1}
                \label{fig:fig1}
        \end{subfigure}%
        \quad
        \begin{subfigure}[b]{0.45\textwidth}
                \centering
                \includegraphics[width=\textwidth]{fig2.pdf}
                \caption{Caption 2}
                \label{fig:fig2}
        \end{subfigure}
        \caption{Side-by-side figures.}
        \label{fig:figures}
\end{figure}

答案1

首先,让我们看看普通人物在aastex

enter image description here

\documentclass{aastex}
\usepackage{graphicx,showframe}

\begin{document}

\begin{figure}
  \centering
  \includegraphics[width=.3\linewidth]{example-image}
  \figcaption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

\figcaption注意图形标题的用法。文档类将标题设置为左对齐(完全对齐)。现在,让我们看看如何使用caption和/或subcaption

enter image description here

\documentclass{aastex}
\let\captionbox\relax
\usepackage{graphicx,caption,subcaption,showframe}
\captionsetup[figure]{labelsep=space,singlelinecheck=false}
\captionsetup[subfigure]{justification=centering}

\begin{document}

\begin{figure}
  \centering
  \begin{subfigure}[b]{0.45\textwidth}
    \centering
    \includegraphics[width=.6\linewidth]{example-image-a}
    \caption{Caption 1}
    \label{fig:fig1}
  \end{subfigure}%
  \quad
  \begin{subfigure}[b]{0.45\textwidth}
    \centering
    \includegraphics[width=.4\linewidth]{example-image-b}
    \caption{Caption 2}
    \label{fig:fig2}
  \end{subfigure}
  \caption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

\captionbox能够与 配合使用\relax(因此这是必需的)。然后,我们将选项设置为忽略 a - 这会将图形设置为与 一样宽,而不管标题宽度如何。此外, a被添加为。我们还captionaastex[figure]singlelinecheck\linewidthspacelabelsep重置为,因为它们继承justification了指定的任何内容。\centering[subfigures][figure]

当然,也可以使用tabulars 来伪造它(失去一些交叉引用功能):

enter image description here

\documentclass{aastex}
\usepackage{graphicx,showframe}

\begin{document}

\begin{figure}
  \centering
  \begin{tabular}[b]{@{}p{0.45\textwidth}@{}}
    \centering\includegraphics[width=.6\linewidth]{example-image-a} \\
    \centering\small (a) Caption 1
  \end{tabular}%
  \quad
  \begin{tabular}[b]{@{}p{0.45\textwidth}@{}}
    \centering\includegraphics[width=.4\linewidth]{example-image-b} \\
    \centering\small (b) Caption 2
  \end{tabular}
  \caption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

相关内容