Ich habe ein Dokument mit der Basisklasse „article“ geschrieben, muss sie jetzt aber in „aastex“ ändern. Wenn ich das mache, funktionieren meine Unterfiguren nicht. Gibt es eine Möglichkeit, dass aastex Unterfiguren zulässt?
Ich habe versucht, mein Originaldokument so schlicht wie möglich zu halten, daher bin ich ziemlich sicher, dass Untertitel und Unteruntertitel die einzigen Pakete waren, die ich hierfür eingefügt habe.
\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}
Antwort1
Sehen wir uns zunächst an, wie eine normale Figur aussieht unteraastex
:
\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}
Beachten Sie die Verwendung von \figcaption
für die Bildunterschrift. Die Dokumentklasse setzt die Bildunterschrift linksbündig (vollständig ausgerichtet). Schauen wir uns nun die Verwendung von ancaption
und/odersubcaption
:
\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}
Wenn \captionbox
to \relax
funktioniert, caption
funktioniert es mit aastex
(es ist also eine Voraussetzung). Dann setzen wir die [figure]
Optionen so, dass a ignoriert wird singlelinecheck
- dadurch wird die Abbildung so breit wie \linewidth
unabhängig von der Beschriftungsbreite. Außerdem space
wird a als hinzugefügt labelsep
. Wir setzen auchzurücksetzendas justification
für , da sie alles erben, was für angegeben \centering
ist .[subfigures]
[figure]
Natürlich kann man es auch mit tabular
s vortäuschen (wobei ein Teil der Querverweisfunktionalität verloren geht):
\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}